home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / HAM / NPFPMS.ZIP / NPFPMS.EXE / NPFPMS.DAT / NOTES.DOC < prev    next >
Text File  |  1994-02-19  |  86KB  |  2,084 lines

  1. NPFPMS  Multi-User PMS  (C) G8NPF 1994
  2.  
  3. A collection of notes about NPFPMS
  4. -------------------------------------------------------------------------------
  5.  
  6. ** Please read the file  README.DOC  first **
  7.  
  8. When editing the NPFPMS.CFG file or any of the CONFIG or SCRIPT files, use an
  9. ASCII editor. Beware of WP programs (like WordStar?) which can leave odd
  10. formatting control codes in the text!
  11.  
  12. *NEVER* manually edit the files in the SYS sub-directory. They may NOT be ascii
  13. files, even if they may appear to be!  The only exception is the BBS.NAC file
  14. which you may update, provided the same layout is retained.
  15.  
  16. *NEVER* manually delete any files in the MAIL or SYS sub-directories.
  17.  
  18. Files in the SCRIPT and CONFIG sub-directories are ascii files and can be
  19. edited as required.
  20.  
  21. Do NOT set the Read-only, Hidden or System attributes on any of the files used
  22. by the PMS.
  23.  
  24. The PMS supports YAPP binary file transfer and NNA/FBB compressed message
  25. forwarding. It is also compatible with 7PLUS (8 bit) files.
  26.  
  27. Note: The clock in the PC should be set to match the TIMESIG entry.
  28. (Times in Amateur Radio are normally in GMT)
  29.  
  30. With slower PC's (and/or hard drives), installing MSDOS's FASTOPEN in your
  31. config.sys file may speed up PMS functions which do a lot of disk searching.
  32. (Like forwarding)
  33.  
  34. The PMS can open quite a few files at times. BPQcode may also have open files,
  35. so make sure your DOS is configured with sufficient files, especially if you
  36. are running the PMS under DESQview, or you are running other programs that open
  37. lots of files.
  38.  
  39. The PMS is in full colour, but *should* be ok on a mono vdu with MDA or
  40. Hercules card.
  41.  
  42. -------------------------------------------------------------------------------
  43.  
  44. The main PMS directory must contain the following files and sub-directories.
  45. PMSCODE.EXE
  46. PMSCODE.DLL
  47. 7PLUS      <DIR>
  48. CONFIG     <DIR>
  49. FILES      <DIR>
  50. FILES.ULD  <DIR>
  51. MAIL       <DIR>
  52. SCRIPT     <DIR>
  53. SYS        <DIR>
  54.  
  55.  
  56. The CONFIG sub-directory may contain the following files. (Some are optional)
  57. AUTOLIST.CMD
  58. DUPCHECK.LST
  59. CHANGE.BBS
  60. FILEDESC.TXT
  61. FWDFILE.LST
  62. HOLD.LST
  63. NPFPMS.CFG
  64. xxxxxx.MAT              Password matrix file(s)
  65.  
  66.  
  67. The SCRIPT sub-directory may contain the following files.
  68. ALLMSG.TXT
  69. FILES.TXT
  70. HELP.TXT
  71. INFO.TXT
  72. INTRO.TXT
  73. NONREG.TXT
  74. NONXMSG.TXT
  75.  
  76.  
  77. The SYS sub-directory MUST contain the following files.
  78. BBS.NAC
  79. LZHRLL.COM
  80. NXTMSG.NUM
  81. SYSOP.TXT
  82.  
  83. After running for a while, the PMS may create the following files in the SYS
  84. sub-directory.
  85. %LOG.PMS
  86. ATBBS.LST
  87. AUTOLIST.TXT
  88. BIDS.REC
  89. JALIST.LST
  90. MSGINDEX.IDX
  91. NAMELOG.SYS
  92. Some other files starting with a % may be created. Never interfere with them!
  93. Some temporary files with the extension .$$$ will also be created, and will be
  94. automatically deleted.
  95.  
  96.  
  97. The FILES sub-directory must contain the file USER.DOC, plus any other files
  98. you wish to make available for downloading. Filenames must contain at least
  99. one non-numeric character.
  100. i.e.  123.doc 123list.001 and 123.001 are all ok, but not just 123
  101. The FILES sub-directory may also contain further sub-directories.
  102.  
  103. User uploaded files go into the FILES.ULD sub-directory, and are not available
  104. to other users until they are transferred into a FILES directory by the SysOp.
  105. When a file is uploaded, the system creates a .dsc file in the FILES.ULD
  106. directory, which contains information on the uploaded file.
  107. DO NOT ALTER THESE FILES!
  108.  
  109. -------------------------------------------------------------------------------
  110. To run the PMS type:   PMS (/switch)
  111. The command line accepts the following switches:
  112.  
  113. /H  Lists the valid switches.
  114. /D  Inhibit the check for the DOS version.
  115. /P  Inhibit Printer-on-line check.
  116. /V  Inhibit DESQview calls.
  117.  
  118. Notes:
  119. The PMS requires MSDOS 3.30 (DRDOS 5.00) or later.
  120. DESQview version (if used) should be version 2 or later.
  121. You can inhibit the DOS check if you know the PMS does run under your version
  122. of DOS, but the PMS initialisation file objects.
  123. Inhibiting the DV calls may slows things down if running under DV.
  124. Inhibiting the printer check, and then printing to an off-line or non-existent
  125. printer, may well 'hang' the system.
  126.  
  127. The system will load an existing JA list, or start a new list otherwise.
  128.  
  129. The first time you run the PMS, enter your own Name/HomeBBS/QTH details
  130. (N NH NQ) and then do a 'B' (Bye) to enter your details into the user database.
  131. You must do this before any other person uses the PMS.
  132.  
  133. To close down the PMS type EXIT from the command line. You cannot close the
  134. PMS if it is connected to a user (or node), or any screen is using the editor.
  135. Disconnect all users and close all editor screens first, and then enter the
  136. EXIT command.
  137.  
  138. -------------------------------------------------------------------------------
  139. Configuration file details.
  140.  
  141. Each entry must be contained on a single logical line. If a line ends in an
  142. underscore character _ the following line will be treated as an extension of
  143. the previous line.
  144.  
  145. Most entries are optional and can be put in any order. Undefined entries will
  146. default to pre-set values. A few entries MUST be specified. These are noted in
  147. the description.  (Any text is only for example).
  148. Comments following a semicolon ; will be ignored. Multiple spaces and <Tab>
  149. characters are reduced to a single space.
  150.  
  151. To include leading spaces, multiple spaces, or a ; character, in a text entry,
  152. enclose the entry in double or single quotes.
  153. e.g. "   Text entry"     'Text   entry'   "A semicolon ; in the string"
  154.  
  155. To include quotes in the entry, enclose it with quotes of the other type.
  156. e.g.  "This is 'quotes' in a string"  or  'This is "quotes" in a string'
  157.  
  158.  
  159. ACCEPT <List of callsign's>
  160. If an accept list is specified, then only the callsign's in the list will be
  161. able to connect to the PMS. All others will be rejected.
  162. The default is a empty list.
  163.  
  164. ACKENABLE YES/NO
  165. Determines whether the PMS automatically generates an acknowledgement reply
  166. when the last line of an incoming message is /ACK
  167. The default is YES
  168.  
  169. AMPRORG <.domain>
  170. The TCP/IP domain. Used in conjunction with IPGATEWAY for forwarding messages to
  171. the local TCP/IP gateway
  172. The default is .AMPR.ORG
  173.  
  174. AUDIO ON/OFF
  175. Determines if all audio (except the chat alarm) is on or off.
  176. The default is ON
  177.           
  178. AUTOBID
  179. The NTS BBS message header BID format.
  180. The default is:  BID
  181. (See AutoList/AutoRead description for details)
  182.  
  183. AUTOFROM <Text>
  184. The NTS BBS message header From format.
  185. The default is:  From
  186. (See AutoList/AutoRead description for details)
  187.  
  188. AUTOLISTTIME HH:MM HH:MM ....
  189. A list of times for auto listing and reading of mail from the local NTSBBS.
  190. See the Mail Forwarding section for more details on how to set times.
  191. The default is a empty list.
  192.  
  193. AUTOMID
  194. The NTS BBS message header MID format.
  195. The default is:  MID
  196. (See AutoList/AutoRead description for details)
  197.  
  198. AUTOPROMPT <Prompt>
  199. The prompt from your NTS BBS
  200. No default. (See AutoList/AutoRead description for details)
  201.  
  202. AUTOREADCMD V/R
  203. The AutoRead command. V=verbose  R=Read
  204. The default is V
  205.  
  206. AUTOROUTE <Route>
  207. The route to your NTS BBS
  208. No default. (See AutoList/AutoRead description for details)
  209.  
  210. AUTOSUBJECT <Text>
  211. The NTS BBS message header Subject format.
  212. The default is:  Subject
  213. (See AutoList/AutoRead description for details)
  214.  
  215. AUTOTO <Text> 
  216. The NTS BBS message header To format.
  217. The default is:  To
  218. (See AutoList/AutoRead description for details)
  219.  
  220. BLANK <minutes>
  221. Duration in minutes before the 'Screen Saver' blanks the screen.
  222. Set to 0 to disable the screen blanker.
  223. The default is 15 minutes.
  224.  
  225. BPQDIR <(drv:)\path>
  226. This specifies the full DOS pathway to the BPQ directory. 
  227. The BPQ directory MUST contain the files BPQCFG.BIN and BPQNODES.COM
  228. The default is \BPQ
  229.  
  230. BPQNODESAVE  YES/NO
  231. IF YES, then when the PMS saves its data cache, it also calls BPQNODES.COM to
  232. save the BPQ nodes list to disk. This is not really a PMS function, but I find
  233. useful to keep the BPQ nodes disk file updated.
  234. The default is NO
  235.  
  236. BTEXT <Text>
  237. BPQ beacon text. Sent at intervals by the BPQ node.
  238. The default is a null string.
  239.  
  240. CHANNELS <0-14>
  241. Specifies the number of user channels, from channel 0.
  242. CHANNELS 2 will give you channels 0, 1 and 2. The greater CHANNELS is set to,
  243. the slower some functions may be, and the more memory the system will require!
  244. The default is 2
  245.  
  246. DEFMASK <0-7FFF>
  247. The startup value for the monitor port mask.
  248. The default is 7FFF (hex)
  249.  
  250. DELETEBULLETIN <number of days>
  251. This is the number of days after which a bulletin is automatically deleted. A
  252. setting of 0 disables the function. Deleted messages cannot be recovered.
  253. The default is 30 (approx. one month). Valid range is 0 to 265
  254.  
  255. DELETEPERSONAL <number of days>
  256. This is the number of days after which a personal message is automatically
  257. deleted. A setting of 0 disables the function. Deleted messages cannot be
  258. recovered.
  259. The default is 60 (approx. two months). Valid range is 0 to 265
  260.  
  261. ERRORCOLOUR <colour>
  262. Colour of text for 'error' messages.
  263. The default is 12  (Light red)
  264.  
  265. EXT <string>
  266. The PMS SID banner.
  267. The default is all options valid [ABFLHMV$]
  268.  
  269. FWDTIME HH:MM HH:MM ....
  270. A list of times when the PMS will do automatic mail forwarding.
  271. See the "Setting of times" section for more details on how to set times.
  272. The default is a empty list
  273.  
  274. HOSTPORT <host port number>
  275. This is the BPQ base host port to use for the PMS. Host ports can be from
  276. 1 to 64. If you specify base HOSTPORT 30, and CHANNELS 3 then the PMS will use
  277. host ports 30,31,32 and 33 for channels 0 to 3. The base host port specified
  278. must be less than (64-CHANNELS)
  279. No default. Must be specified.
  280.  
  281. INACTIVETIMEOUT <Time in seconds>
  282. This is the maximum time the PMS will wait for ANY input while connected to a
  283. user.  This will stop the PMS 'hanging' if a user disappears without
  284. disconnecting.  1200 gives 20 minutes
  285. The default is 1200. Valid range is 60 to 1800
  286.  
  287. IPGATEWAY <callsign>
  288. The callsign of the local TCP/IP gateway station. (May be your own node).
  289.  
  290. JALISTSIZE <size>
  291. The maximum number of entries allowed in the JA list.
  292. The default is 50. Valid range is 10 to 1000
  293.  
  294. KEEPBBSMSG YES/NO
  295. If YES then incomplete un-compressed messages from BBS stations will be kept.
  296. If NO they will be deleted.
  297. (Incomplete compressed messages will always be deleted.)
  298. The default is NO
  299.  
  300. KEEPFILE YES/NO
  301. If YES then incomplete uploaded ASCII files will be kept. If NO they will be
  302. deleted. (Incomplete binary (Yapp) files will always be deleted.)
  303. The default is NO
  304.  
  305. KEEPMSG YES/NO
  306. If YES then incomplete un-compressed messages from normal users will be kept.
  307. If NO they will be deleted.
  308. (Incomplete compressed messages will always be deleted.)
  309. The default is YES
  310.  
  311. KILLBULLETIN <number of days>
  312. This is the number of days after which a bulletin is automatically killed. A
  313. setting of 0 disables the function.
  314. The default is 15. Valid range is 0 to 265
  315.  
  316. KILLONFWD YES/NO
  317. If set to YES then mail will be automatically killed after being forwarded.
  318. The default is NO
  319.  
  320. KILLPERSONAL <number of days>
  321. This is the number of days after which a personal message is automatically
  322. killed. A setting of 0 disables the function.
  323. The default is 30. Valid range is 0 to 265
  324.  
  325. LOCALINCOLOUR <colour>
  326. Colour of text typed at the local keyboard.
  327. The default is 11  (Light cyan)
  328.  
  329. LOCALOUTCOLOUR <colour>
  330. Colour of text in response to a local command.
  331. The default is 3  (Cyan)
  332.  
  333. LOGUSER YES/NO
  334. Determines the initial state of the Log User option.
  335. Note: Setting LOGUSER to YES can result in a LOT of text being written to the
  336. log file!
  337. The default is NO
  338.  
  339. MAILTIME MM MM
  340. A list of minutes past the hour when periodic 'MESSAGE FOR' beacons will be
  341. sent. (Once per hour is normally more than enough!)
  342. The default is a empty list.
  343.  
  344. MAXCON <number>
  345. Number of incoming connections allowed per user. A MAXCON of 1 is recommended!
  346. This has no effect on the number of outgoing connections from the PMS.
  347. The default is 1. Valid range is 1 to 5
  348.  
  349. MAXFRAME <number>
  350. The maximum number of outstanding frames allowed.
  351. If a valid maxframe can be read from the NODE port during transmission, then
  352. the value read over-rides this setting.
  353. The default is 2. Valid range is 1 to 10
  354.  
  355. MAXLIST <number>
  356. The maximum number of messages that can be listed by the basic List commands.
  357. Set to 0 to disable the restriction.
  358. The default is 50
  359.  
  360. NIC <address>
  361. Your international "address" for use in mail headers.
  362. THIS MUST BE CORRECT or your mail will get lost!
  363. e.g. G8NPF.GB7ESX.#31.GBR.EU
  364. The default is a null.
  365.  
  366. NODECONN <text>
  367. Node reply text for a successful connection.
  368.  
  369. NODEFAIL <text>
  370. Node reply text for a failed connection.
  371.  
  372. NONXPROMPT A,B,C,D......W,X
  373. This is the prompt given to non-expert users.
  374. No default. Must be specified.
  375.  
  376. NTSBBS <callsign>
  377. This is the callsign of your local (GB7) NTSBBS    (e.g. GB7ESX)
  378. The default is a null.
  379.  
  380. PACLEN <number>
  381. The default transmitted packet length. If not specified then a default value
  382. is read from the BPQCFG.BIN file. If a valid paclen can be read from the NODE
  383. port during transmission, then the value read over-rides this setting.
  384. The default is 128
  385.  
  386. PAGEAUDIO ON/OFF
  387. Determines if the 'chat alarm' audio is on or off.
  388. The default is ON
  389.  
  390. PAGETIMEOUT <seconds>
  391. Sets the time delay before a 'not home' reply is given to a Page (T) command.
  392. The default is 20 seconds
  393.  
  394. PMSCALL <callsign>
  395. The callsign used by the PMS including any SSID  (e.g. G8NPF-3)
  396. There is normally no need to enter this as, if not specified, the callsign will
  397. be read directly from the BPQ config file (bpqcfg.bin)
  398. The default is to use the BPQ BBSCALL
  399.  
  400. PORTnCOLOUR <colour number>
  401. Colour of text from BPQ radio port n. (1 to 16)
  402. The default colour is 7 (White) for all ports.
  403.  
  404. PRINTER <printer port>
  405. Sets the I/O port used for the printer. (PRN: LPT1/2/3: COM1/2:)
  406. The default is LPT1:
  407.  
  408. PRINTERFILTER <start (end)>
  409. Range of ascii codes to be excluded from the printer. (See note below.)
  410.  
  411. PROGRESS ON/OFF
  412. If ON then a progress (debug) window is opened in the lower right hand corner
  413. of the display to show the channel status.
  414. The default is OFF
  415.  
  416. PURGETIME HH:MM
  417. A list of times for the PMS to do its housekeeping. You can enter several times
  418. in the HH:MM format, but two should be enough. Pick quite times as, if the PMS
  419. is very busy, the purge may not take place. Server commands (REQDIR etc.) are
  420. also processed at this time. You must put at least one entry in the list. See
  421. the "Setting of times" section for more details on how to set times.
  422. The default is a empty list.
  423.  
  424. REGISTRATION <number>
  425. Your PMS registration number. For registered users only.
  426.  
  427. REJECT <list of invalid calls>
  428. A station attempting to log-on using a callsign in this list will be rejected.
  429. The list should include invalid calls like  NOCALL PK232  etc.
  430. This should not be used to prevent a valid callsign from gaining entry.
  431. (Undesirables can be locked out by setting their access flag bit zero to 0)
  432. The default is a empty list.
  433.  
  434. REVIEWSIZE <number of lines>
  435. Sets the number of lines you can scroll back in review mode.
  436. The default is 50. The valid range is 30 to 1000
  437.  
  438. ROUTEID <Text>
  439. Optional info text to be added to R: routing line.  (Max. 26 characters)
  440. Don't include the square brackets or the PMS type/version. They are added
  441. automatically.
  442. The default is a null. 
  443.  
  444. SCREEN 25/43/50       (Experimental only)
  445. The number of lines displayed on the screen. As this command calls the DOS MODE
  446. command, it may not work with all versions of DOS. (A future version will not
  447. rely on the DOS MODE command).
  448. (Note: May not operate correctly when running under DESQview)
  449. The default is 25 lines.
  450.  
  451. SCROLLFLASH ON/OFF
  452. Determines if the Scroll Lock LED on the keyboard will flash when the PMS has
  453. a new message for the SysOp.
  454. The default is OFF
  455.  
  456. SECURITY <character(s)>
  457. Extra input required if a user is using the SysOp's callsign.
  458. The default is two dots ..
  459.  
  460. SESSIONTIMEOUT <seconds>
  461. This is the maximum time a user can stay connected before the PMS automatically
  462. disconnects.  3599 will give 59 minutes 59 seconds. (The maximum allowed)
  463. The default is 3500. The valid range is 600 to 3599
  464.  
  465. SYSTEMCOLOUR <colour>
  466. Colour of system generated text.
  467. The default is 2  (Green)
  468.  
  469. TEXTBUFFERSIZE <number of lines>
  470. Sets the maximum number of lines available to the system editor.
  471. Files will be truncated to fit the the limit.
  472. The default is 500. The valid range is 50 to 5000
  473.  
  474. THIRDPARTY 0/1/2
  475. If 0 then 3rd. party messages can only be sent by the SysOp.
  476. If 1 then stations with access bit 7 set will be able to send third party mail.
  477. If 2 then 3rd party messages will be accepted from ANY user. (!)
  478. The default is 1
  479.  
  480. TIMESIG <gmt/utc/bst/...>
  481. The PMS time signature.  This should match the time set in the computer.
  482. The default is gmt
  483.  
  484. TIMEZONE <zone>
  485. The time zone id used in the PMS mail header.
  486. The default is z
  487.  
  488. USEWP 0/1/2
  489. If 0 then the White Pages file is kept updated, but not used.
  490. If 1 then the WP file is searched when a message is entered, to warn the user
  491.      if the @BBS field used differs from the one in the WP file.
  492. If 2 then the WP entry will be used if a message is entered with no @BBS field.
  493. The default is 2
  494.  
  495. VDU MONO\HERC\VGA\COLOUR\COLOR\MONOVGA
  496. Set to MONO or HERC if you are using a MDA or Hercules card.
  497. Set to VGA or COLOUR if you are using a CGA/EGA/VGA card with colour monitor.
  498. Set to MONOVGA if you are using a CGA/EGA/VGA card with mono monitor.
  499. The default is COLOUR
  500.  
  501. VIDSEG <(&H)screen segment address>
  502. Sets a non-standard video segment address. If the address is given in Hex then
  503. it must be preceded with &H   e.g. VIDSEG &HB800
  504. If set incorrectly, the screen may not be correctly restored after using the
  505. editor, and could also crash the system!
  506. IF IN DOUBT, DO NOT INCLUDE THIS ENTRY.
  507. The default is &HB800 for COLOUR\VGA, and &HB000 for MONO
  508.  
  509. ***EOF
  510. (Command list terminator. Must be included.)
  511.  
  512. -------------------------------
  513.  
  514. "Multi-line" commands. These commands may use more than one line. Text may
  515. include $x variables. The command separator must be at least 5 dashes (-----)
  516. Don't include any text on the command line.
  517.  
  518. BBSLOGON
  519. <Text>
  520. Text sent to BBS stations (those with user BBS flag set) at log-on.
  521.  
  522. WELCOME
  523. <Text>
  524. Text sent to normal users at log-on.
  525.  
  526. GREET
  527. <Text>
  528. Additional text sent to users without the SHORT flag set.
  529.  
  530. BEACONTEXT
  531. <Text>
  532. The text used in MAIL beacons.
  533.  
  534. PAGEYES
  535. <Text>
  536. The text sent for a positive response to a SysOp Page. (Page-Up)
  537.  
  538. PAGENO
  539. <Text>
  540. The text sent for a negative response to a SysOp Page. (Page-Down or Time-out)
  541.  
  542. BYE
  543. <Text>
  544. The text sent in response to a B (Bye) or Q (Quit to node) command.
  545.  
  546. PROMPT
  547. <Text>
  548. The text sent as the PMS prompt.
  549.  
  550. MESSAGEHEADER
  551. <Text>
  552. Standard text included at the start of all messages originated at the keyboard.
  553.  
  554. MESSAGEFOOTER
  555. <Text>
  556. Standard text included at the end of all messages originated at the keyboard.
  557.  
  558. ***EOF
  559. (Command list terminator. Must be included.)
  560.  
  561.  
  562. See the sample NPFPMS.CFG file for details.
  563.  
  564. -------------------------------------------------------------------------------
  565. SCRIPT FILES
  566.  
  567. The first 4 files are sent to users at log-on. They will NOT sent to users
  568. flagged as BBS stations in the user file.
  569.  
  570. INTRO.TXT    is sent to all users at log-on
  571. ALLMSG.TXT   is sent to users without the SHORT flag set.
  572. NONXMSG.TXT  is sent to non-expert users.
  573. NONREG.TXT   is sent to a user who has used the PMS before, but has not
  574.              registered by entering their Name, QTH and Homebbs details.
  575.  
  576. HELP.TXT     is sent in response to the H (Help) command.
  577. INFO.TXT     is sent in response to the I (Info) command.
  578. FILES.TXT    is sent after a W (directory listing) command.
  579.  
  580. You may edit these text file with any ASCII editor. They can contain anything
  581. you think appropriate.
  582.  
  583. -------------------------------------------------------------------------------
  584.  
  585. The PMS maintains a 'White pages' file of stations home NTS BBS's
  586. This is updated when a user enters his home BBS with the NH command, and also
  587. when messages which include a 'R:...' line are sent/forwarded to the PMS
  588. This file is used for the S (Send) and F (Find) commands.
  589.  
  590. When a user enters a message, the PMS will look up the stations home BBS in the 
  591. WP file. If an entry is found, and the user did not specify any @BBS, then the
  592. PMS will add the home BBS found in the WP file. If the user gave a @BBS that is
  593. different to the @BBS field in the WP file the PMS will warn the user that the
  594. @BBS may be incorrect.
  595. e.g.
  596. If G9AAA is in the WP file as having a home BBS of GB7ESX.#31.GBR.EU then,
  597.  SP G9AAA    will be translated to:  SP G9AAA @GB7ESX.#31.GBR.EU
  598.  SP G9AAA @GB7NNA will warn the user that the @BBS used may be incorrect.
  599.  
  600. You may override the WP entry by using the following options: 
  601.  SP G9AAA@   will be translated to:  SP G9AAA @G9AAA
  602.  SP G9AAA@*  will be translated to:  SP G9AAA   (a local message, no @BBS)
  603.  
  604.  
  605. ------------------------------------------------------------------------------
  606. The SU command.   Only available to SysOp.
  607.  
  608. To leave a message to all users use:  SU ALL   (Syntax as in the SP command.)
  609. The message is posted in the usual way. The message will be flagged as an
  610. unread personal message to all users. The user List and Read commands will
  611. treat the message as if it was an unread personal message.  The user cannot
  612. kill the message. To prevent it being offered again, the user should use a List
  613. command after reading it.
  614.  
  615. ------------------------------------------------------------------------------
  616. Carbon Copy (CC) messages.
  617.  
  618. Multiple personal messages to all callsign's in a group.
  619. This type of message may be sent by any user with access bit 7 set (3rd party
  620. send), or by anyone if THIRDPARTY = 2
  621. The syntax is:  SP <name> (@BBS)
  622.  
  623. Note: It must be SP and not SB. A type SB will not be copied.
  624.  
  625. To create a Carbon Copy group you create a file, which must reside in the
  626. CONFIG directory, with the group name followed by a .cc extension.
  627. i.e.  EPG.CC
  628. The file should contain callsign(s) of users allowed to send messages to the
  629. group, plus the callsign's and home BBS's of the users to whom the message will
  630. sent.
  631.  
  632. e.g.  File EPG.CC
  633.  
  634. G6CHJ               List of callsign's allowed to send messages to the group.
  635. G8NPF
  636. ******              Separator. Must be at least five 'stars'
  637. G9AAA @ GB7ESX      List of recipients.
  638. G9BBB @ GB7NAA
  639. G9CCC
  640. G9DDD @ GB7ESX
  641. G9EEE @ GB7ESX
  642.  
  643. Stations G6CHJ and G8NPF can now send messages to the EPG group by entering
  644. 'SP EPG'. The message is sent in the normal way. When the message is finished
  645. multiple messages are created from the original message. The station sending
  646. the message is informed the CC messages are being created, unless that station
  647. is a BBS.
  648.  
  649. If you often need to send several copies of the same message to another BBS it
  650. might make sense to ask the other BBS to create a Carbon Copy file containing a
  651. list of the users you wish to send messages to on his BBS. Then only one copy
  652. of the message would need to be sent to the other BBS.
  653. For example, with the EPG CC group, if GB7ESX had a CC file for EPG group
  654. members on his BBS, then the local EPG.CC file could read:
  655.  
  656. G6CHJ
  657. G8NPF
  658. ******
  659. EPG @ GB7ESX
  660. G9BBB @ GB7NAA
  661. G9CCC
  662.  
  663. So only one message would be sent to GB7ESX instead of three. The result would
  664. be the same as sending three individual messages to GB7ESX. Of course the above
  665. would only work if GB7ESX was set up to allow this!
  666.  
  667. The SysOp can always send a message to any CC group even if his callsign in not
  668. in the CC list. You may create as many CC groups as required.
  669. Make sure the names are unique and are not the same as commonly used bbs TO
  670. fields. (Like ALL SYSOP HELP etc.) and are no more that 6 characters long.
  671. After the message is copied to all the callsign's in the CC list the original
  672. message is killed. The copies will be automatically marked for forwarding, if
  673. appropriate.
  674.  
  675.  
  676. ------------------------------------------------------------------------------
  677. Command history buffer.
  678.  
  679. Previous keyboard typed commands are saved in a 15 line cyclic buffer.
  680. Use up arrow and down arrow to cycle through the buffer.
  681.  
  682. -------------------------------------------------------------------------------
  683. Input line editing.
  684.  
  685. The 'cursor' can be moved with the <arrow>, <Home>, <End> and <Ctrl arrow> keys
  686. The insert key will toggle insert mode on and off. The letter I shows in the
  687. status line when insert is on.  <Ctrl Y> or <Esc> will cancel the entire line.
  688. The edit cursor will show as inverted flashing text. The normal cursor shows
  689. as an underscore.
  690.  
  691. ------------------------------------------------------------------------------
  692. Listing pause option.
  693. ---------------------
  694. Assuming ListPause is set to on (P ON) for the user or SysOp....
  695.  
  696. If a user is connected, then listings will pause approximately every 15 lines
  697. and the user is asked:  -- More Y/n >
  698. When the SysOp is using the local keyboard, listings will pause at
  699. approximately one pagefull. The actual number of lines displayed per page
  700. depends on the screen mode.
  701.  
  702. ------------------------------------------------------------------------------
  703. JA command.
  704. -----------
  705. The JA command can accept 3 parameters (in any order).
  706. 1. The number of entries to search. (Default to 12 if no other parameter used)
  707. 2. The callsign/alias to search for. Partial callsign will also be matched
  708.    unless the callsign is entered with a trailing -
  709. 3. The BPQ port n, as P=n
  710.  
  711. e.g.
  712.   JA            List the last 12 entries.
  713.   JA 25         List the last 25 entries.
  714.   JA G8NPF      List all entries for G8NPF...
  715.   JA G6CHJ-1    List all entries for G6CHJ-1...
  716.   JA GB7ES-     List all entries for GB7ES only.
  717.   JA 30 P=1     List the 30 most recent entries on port 1
  718.   JA G8NPF P=2  List all entries for G8NPF... on port 2 only.
  719.   JA P=1        List all entries on port 1
  720.   JA P=3 40     List the last 40 entries on port 3
  721.  
  722. -------------------------------------------------------------------------------
  723. PMS status lines.
  724.  
  725. The top status line indicates:
  726. Session xx:xx    The session timer.
  727. Wait    xx:xx    The inactivity timer.
  728.  
  729. The second status line indicates:
  730.                  The full callsign of a connected station and the node status.
  731. Cnn              The pms channel number.
  732. Hnn              The BPQ host port number.
  733. Inn              The BPQ host interrupt value.
  734.  
  735. nnnn             DOS version.
  736. nnnn             DV version (if applicable).
  737. nnnn             BPQ switch version.
  738. nnnn             (Internal check).
  739.  
  740. U=nnn            The number of unacknowledged packets pending.
  741. Q=nnn            The number of packets queued for receive.
  742. B=nnn            The number of buffers left in the node.
  743.  
  744.  
  745. The lower status line of the screen display indicates:
  746. ISCA        Insert/Shift/Alt/Ctrl key status.
  747. ------      The callsign of the station connected to this channel.
  748. Status      The current mode of operation.
  749. Log         The Log User status.
  750. Serv        Upload/Download file servers enabled/disabled.
  751. Busy        The busy status of the PMS channel and/or BPQ host port.
  752. Capt        Receive capture file (to disk) active.
  753. Mon         The monitor status of the BPQ host port.
  754. Print       The 'output to printer' status.
  755. Mask-nnnn   Monitor port mask (in hex).
  756.  
  757. -------------------------------------------------------------------------------
  758. System errors.
  759.  
  760. The PMS will attempt to recover from some system errors.
  761. If possible, it will disconnect any users, close down, and then re-boot the PMS
  762. code. Depending on what had gone wrong, this may or may not work, but if it
  763. fails, nothing is lost by trying!
  764.  
  765. -------------------------------------------------------------------------------
  766. User sub-directories.
  767.  
  768. The SysOp can set up user sub-directories in the FILES directory.
  769. The directory format is:  G8NPF.USR   (The extension must be .USR)
  770. Only a user with a matching callsign will have access to the files in a .USR
  771. sub-directory. You may have as many .USR sub-directories as you wish.
  772.  
  773. -------------------------------------------------------------------------------
  774. Time-outs
  775.  
  776. The session time-out (Session) will disconnect a user after the time specified
  777. by the SESSIONTIMEOUT entry has expired.
  778.  
  779. The inactivity time-out (Wait) will disconnect a user after the time specified
  780. by the INACTIVETIMEOUT entry has expired without ANY input to the PMS.
  781.  
  782. If a user times out during a file upload/download the time-out is 'held' until
  783. the file transfer is completed. The time-out then takes effect.
  784.  
  785. The session and inactivity time-outs are suspended during CHAT sessions and
  786. when in TERMINAL mode, and also when the station connected is logged in with
  787. SysOp status.
  788.  
  789. (Remember the time-out counters can be manually re-set with the F7 and Shift/F7
  790. function keys)
  791.  
  792. -------------------------------------------------------------------------------
  793. Setting of times  (for forwarding, autolist etc.)
  794.  
  795. The list should be in the form of HH:MM HH:MM etc.
  796. Times can also have a 'days of the week' parameter.
  797. Those times will only be used if the current day is included in the parameter.
  798. This can be used to stop forwarding on busy days (i.e. weekends).
  799. e.g.   FORWARDTIME 10:22/145  05:15/23456  16:45
  800.   The 10:22 time will only operate on days 1,4 and 5
  801.   The 05:15 time will only operate on days 2,3,4,5,6  (i.e. Not Sat or Sun)
  802.   The 16:45 time will operate on any day.
  803.  
  804.   (Day 1 is Sunday, Day 7 is Saturday)
  805.  
  806. Avoid setting a time to exactly on the hour as that's when the PMS saves its
  807. data cache to disk, and runs the BPQNODES.COM file to save the BPQNODES list.
  808.  
  809. -------------------------------------------------------------------------------
  810. Syntax of connect paths for Forwarding, AutoList etc.
  811.  
  812. The connect path commands consist of a list of commands & nodes to connect
  813. through, ending in the callsign of the station you wish to connect to,
  814. separated by colons.    i.e.   C NTSX:C ESX:C GB7NNA
  815.  
  816. You can force a BPQ switch to connect on a specific port by adding the BPQ port
  817. number to the callsign.  i.e.    C NTSX:C 2 G1NNB:C GB7NNA
  818. This will connect to node NTSX first, and then try to connect via NTSX's port
  819. number 2 to node G1NNB, and then to GB7ESX
  820.         
  821. The 'connect command' is normally 'C' but can also be 'X' if you are 
  822. cross-connecting via a KA node. If the connect command is missing, the a C is
  823. assumed.
  824. i.e.    C NTSX:C ESX:C GB7NNA   (Normal connect)
  825.         NTSX:ESX:GB7NNA         (Same as above)
  826.         C KEPAC3:X GB7DUG       (Cross connect via KA node KEPAC3)
  827.  
  828. -------------------------------------------------------------------------------
  829. Automatic Forwarding protocol.
  830.  
  831. When setting up your FWDFILE.LST the LAST entry *MUST* be you local NTS BBS
  832.  
  833. When the PMS starts a forwarding session it will scan the FWDFILE.LST file and
  834. forward any messages it finds for stations included in the FWDFILE.LST file.
  835. When it gets to the NTS BBS entry, any messages (with an @BBS field) for
  836. stations not in the FWDFILE.LST file will be sent to the NTS BBS.
  837.  
  838. Messages with unknown @BBS fields (e.g. @EU @WWW @WA7XYZ) will always be sent
  839. to the NTS BBS.
  840.  
  841. ------------------------------------------------------------------------------
  842. BBS/PMS SID letters.
  843.  
  844. When the PMS connects to a BBS for forwarding it checks the SID of the BBS.
  845. Typically, the BBS SID may be something like  [NNA-2.02-BFHLM$]
  846.                                           or  [FBB-1.00-ABFHM$]
  847. The PMS will support the use of BID's for bulletins if the BBS has included
  848. the $ character in its SID. (All known software does).
  849. It will also use use MID's for personal messages if the BBS has included a M
  850. in its SID. Note, if the SID includes the letter L, then the letter M is
  851. assumed, even if its not actually there.
  852.  
  853. The letter A indicate the PMS\BBS can support FBB's ACK: type messages.
  854. The letter V indicate the PMS\BBS can support NNA type password verification.
  855. The letter F indicate the PMS\BBS can support FBB's bulk ascii forwarding.
  856. The letter B indicate the PMS\BBS can support FBB's bulk compressed forwarding.
  857. If you include the letter B you MUST also include the letter F
  858.  
  859. The letter L indicates the PMS\BBS supports NNA's bulk compressed forwarding.
  860. The letter L over-rides BF. If both PMS & BBS have the letters BFL in their
  861. SID's then NNA bulk forwarding will be used in preference to FFB forwarding.
  862.  
  863. If both PMS & BBS included a H in their SID, then the PMS will use the full
  864. address of a station, if known.  (e.g. G8NPF@GB7ESX.#31.GBR.EU)
  865. Normally it is not necessary (or desirable?) for the PMS do do this, as routing
  866. is best left to the BBS.
  867.  
  868. If your current version of the PMS SID includes the letter P then it MUST be
  869. removed as the old style NNA compression is no longer supported by the PMS
  870. (or by NNA's code!)
  871.  
  872. The $ should be the last letter, to retain compatibility with early MBL/RLI
  873. systems.
  874.  
  875. The PMS SID should normally be  ABFLMHV$
  876.  
  877. ------------------------------------------------------------------------------
  878. The /! switch
  879.  
  880. Some TCP/IP or NOS systems require a 'carriage-return' (ASC 13) to activate
  881. their mailbox, otherwise nothing happens.  If you precede the callsign with a
  882. ! the PMS will send the required 'CR' after establishing the connection.
  883. Don't use this with normal AX25 BBS/PMS type stations.
  884.  
  885. ------------------------------------------------------------------------------
  886. Forwarding and the optional parameters  > < @ #
  887.  
  888. > = To
  889. < = From
  890. @ = at BBS
  891. # = a message number
  892.  
  893. Normally, only messages with an @BBS field that matches the callsign of the
  894. station being forwarded to, will be forwarded to that station.
  895. i.e. only messages addressed  xxxx@G6CHJ  would be forwarded to G6CHJ.
  896. You can force the PMS to forward other message groups by adding the parameters
  897. >callsign  <callsign  @bbs  #msgnumber  to the forwarding command.
  898.  
  899. When using the manual forwarding command FD (or poll command PL):
  900. FD G6CHJ-3 >WNOS #1234
  901. will forward to G6CHJ all messages addressed @G6CHJ, any messages addressed to
  902. WNOS, and the specific message numbered 1234, regardless of how it is addressed
  903.  
  904. The same format can also be used in the automatic forwarding file FWDLIST.LST
  905. to always include certain groups of messages in a forwarding session.
  906. e.g.   C NEEX:C G6CHJ-3 >TCPIP
  907. will always forward messages addressed to TCPIP to station G6CHJ-3 as well as
  908. any messages addressed @G6CHJ
  909.  
  910. Note:
  911. Personal messages (PW) can only be forwarded once, so if you re-direct a
  912. personal message to another station its status will become PF, and so it will
  913. not be forwarded to the addressee as well. (Unless you use the MM command to
  914. change its status back to PW)
  915. Bulletins (B$) do not get their status changed after forwarding, so they can be
  916. forwarded to more than one station. 
  917.  
  918. -------------------------------------------------------------------------------
  919. Forced forwarding to an alternative BBS.
  920.  
  921. It is possible to manually forward to any BBS as if it was your normal NTSBBS
  922. by adding /* to the end of the command line.
  923. i.e.  FD GB7SFK /*  will forward all messages that would normally be forwarded
  924. to your regular NTSBBS, as if GB7SFK was your NTSBBS (for that session only!)
  925.  
  926. -------------------------------------------------------------------------------
  927. If both your PMS, and the station you are forwarding to, have the automatic
  928. password verification option set (letter 'V' in SID) then the system will
  929. insist on a password exchange. If either station does not have the correct
  930. password matrix, the system will disconnect. To force forward to such a station
  931. you can inhibit the password check by adding the parameter /V to the end of the
  932. command line, which will temporarily suppress the 'V' in your SID string.
  933. i.e. FD NNA:GB7NNA /V
  934.  
  935. -------------------------------------------------------------------------------
  936. Automatic forwarding to a TCP/IP gateway.
  937.  
  938. The PMS can automatically re-direct messages for tcp/ip stations to your
  939. local tcp/ip gateway station, which could be your own tcp/ip station available
  940. via the BPQ switch, or another local station.
  941. Any message with .ampr.org as the @BBS tail will be forwarded.
  942. e.g. a message posted as:  SP g8dzh@g8npf.ampr.org
  943.                       or:  SB all@gb7tcp.ampr.org
  944.  
  945. You must set the ip gateway callsign in the npfpms.cfg file.
  946. e.g.  IPGATEWAY G8NPF-5
  947. You should also include the gateway stations callsign in the FWDFILE.LST file,
  948. as you would for any other station.
  949.  
  950.  
  951. -------------------------------------------------------------------------------
  952. -------------------------------------------------------------------------------
  953. Special control key combinations.
  954.  
  955. The <Ctrl><Left-Shift> key combination.
  956. Holding down these keys will:
  957. 1. Inhibit the MAIL beacon after a user disconnects, or whenever the PMS is
  958.    about to send a MAIL beacon.
  959. 2. Terminate a FORWARD, POLL or AUTOLIST session at the end of the current
  960.    connection.
  961. 3. Will abort a users listing as if the user had sent an abort (A) command.
  962. 4. Will prevent the PMS from re-booting after closing down with an error
  963.    condition.
  964.  
  965.  
  966. The <Alt><Left-Shift> key combination.    (Similar to F12 key)
  967. Pressing these keys will switch the PMS display to the next channel up.
  968.  
  969. The <Alt><Right-Shift> key combination.   (Similar to F11 key)
  970. Pressing these keys will switch the PMS display to the next channel down.
  971.  
  972.  
  973. The <Ctrl><Right-Shift> key combination.
  974. Holding down these keys will 'dump' a user. The user is disconnected without
  975. warning!
  976.  
  977.  
  978. The <Alt><(0-9)> key combination.
  979. Pressing Alt(0-9) will switch the PMS display to that channel (if valid).
  980.  
  981.  
  982. <PageUp> & <PageDown> keys.
  983. 1. Used in response to a chat request alarm from a user.
  984. Pressing <PageUp> will advise the user that you are ready to chat.
  985. Pressing <PageDown> will advise the user that you are not available.
  986. (Doing nothing will also give the unavailable response after a short delay).
  987.  
  988. 2. When a user is connected to the PMS, pressing <PageUp> will advise the user
  989. that you wish to chat to them. <PageDown> terminates the chat and puts the user
  990. back to the normal PMS.
  991.  
  992. The <PageUp> and <PageDown> keys ONLY work when the PMS is connected to a user.
  993.  
  994.  
  995. The <Tab> key.
  996. When in TERMINAL or CHAT mode, the <Tab> key will add 3 chevrons plus a
  997. <Return> to the input line.   >>><Cr>
  998.  
  999.  
  1000. -------------------------------------------------------------------------------
  1001. Message status flags.                 (x=anything)
  1002.  
  1003. Bit     Flag    Meaning               Hex
  1004. 0       RBA     Reads by addressee.   xx=number of reads
  1005. 1       RBO     Reads by others.      xx=number of reads.
  1006. 2       TYPE    Message type.         00=Open    01=Bulletin  02=Personal
  1007.                                       03=User    04=AutoRead  05=ack:
  1008.                                       08=Incoming
  1009. 3       COMP    Msg completed?        00=incomplete  Cx=Incoming  FF=completed
  1010. 4       KOF     Kill on forwarding    00=don't kill.  >0=kill.
  1011. 5       FWDT    Forward type.         00=no fwd.  01=local only.
  1012.                                       03=normal forwarding.
  1013. 6       FWD     Forwarded status.     00=not forwarded.  01=read by addressee
  1014.                                       FF=forwarded.
  1015. 7       ACT     Msg active flag.      xF=active.  x0=killed.  1x=on hold
  1016.                                       4x=un-killable.  8x=un-deleteable.
  1017. 8       RBS     Read by SysOp         00=not read.  80=read.   
  1018.  
  1019. A typical MS (Message Status) might produce:
  1020.  
  1021. RBA  - &H01      Read by the addressee
  1022. RBO  - &H02      Also read twice by other stations
  1023. TYPE - &H02      Message type Personal (SP)
  1024. COMP - &HFF      The message is complete
  1025. KOF  - &H00      Don't kill after forwarding
  1026. FWDT - &H03      Message for normal automatic forwarding
  1027. FWD  - &HFF      Has been forwarded successfully
  1028. ACT  - &H0F      Still an active message.
  1029. RBS  - &H00      Not read by the PMS SysOp.
  1030. 000000000000000000000000000000000000000000000000000000100100011
  1031.  
  1032. The last line is the flags which indicate which stations already have the
  1033. message. These bits correspond to the (reverse) order of the stations listed in
  1034. the CONFIG\dupcheck.lst file.
  1035.  
  1036. To change a messages status use MM followed by a list of parameters in the
  1037. same order as the MS list. Use a * to leave a parameter unchanged. You only
  1038. need to enter parameters up to the one you wish to change.
  1039. Assuming message 123 is to be changed:
  1040.  
  1041. MM 123  * * 02 
  1042. will change the message into a bulletin.
  1043.  
  1044. MM 123 * * * * * 00
  1045. will prevent the message from being forwarded.
  1046.  
  1047.  
  1048. Special message types.
  1049. ----------------------
  1050.  
  1051. 'Un-killable' and 'Un-deleteable' messages.
  1052. Only the SysOp can kill/delete this type of message, after setting the status
  1053. back to normal. The auto housekeeping function will not be able to kill or
  1054. delete them either. Messages can be marked in this way, by the SysOp, by using
  1055. the MM (Mark Message) function.
  1056.  
  1057. MM nnn &H4F    for un-killable.
  1058. MM nnn &H8F    for un-deleteable.
  1059. MM nnn &HCF    for both.
  1060. (nnn is the message number)
  1061. They can be set to normal with:   MM nnn &H0F
  1062.  
  1063. -------------------------------------------------------------------------------
  1064. File downloaded flag.
  1065.  
  1066. When doing a W to obtain a directory listing, the file-size may be followed
  1067. by an 'a'. This indicates that the file has not yet been downloaded.
  1068. When it is downloaded the 'a' flag is cleared. This is mainly intended for
  1069. files placed in .USR sub-directories, and allows the SysOp to tell if a user
  1070. has downloaded a file left for them.
  1071. This mechanism uses the files archive (A) attribute. You can manually set the
  1072. attribute by typing;  * ATTRIB +A FILES\<(subdir\)fsp>   (assuming MSDOS)
  1073.  
  1074. The archive bit can be cleared by using -A in place of +A
  1075.  
  1076. -------------------------------------------------------------------------------
  1077. Printer filters.
  1078.  
  1079. If your printer cannot handle all the extended IBM character set (Ascii codes
  1080. 128 to 255) then you may exclude a range of codes from the printer with the
  1081. config command PRINTERFILTER <start>-(<end>)   e.g.  PRINTERFILTER 128-159
  1082. If <end> is omitted then 255 is assumed.
  1083. You may use multiple PRINTERFILTER commands to exclude as many small blocks
  1084. as you wish. To exclude all of 128 to 255 just use:  PRINTERFILTER 128
  1085.  
  1086. You can also exclude control codes as well.  e.g. PRINTERFILTER 12-12 will
  1087. exclude the FF (FormFeed) control code only. However, all control codes except
  1088. ASCII 13 (CR) and ASCII 26 (Ctrl Z) are filtered from in-coming text before
  1089. being displayed or printed anyway, so this should not normally be required.
  1090.  
  1091. (You can also exclude normal (printable) codes if you really feel the need!)
  1092.  
  1093. -------------------------------------------------------------------------------
  1094. Printer control.
  1095.  
  1096. The PMS tries to manage printer output, to prevent an attempt to print to a
  1097. printer that is off-line, or otherwise unavailable, from hanging the PMS.
  1098. However, pressing the Print-Screen key to dump the screen to printer with the
  1099. printer unavailable (switched off or buffer full) may cause ALL the PMS windows
  1100. to freeze until the printer dump has finished.
  1101.  
  1102. -------------------------------------------------------------------------------
  1103. Dump user.
  1104.  
  1105. A user may be dumped at any time by pressing, and holding, the
  1106. <Right Shift> and <Right Ctrl> keys simultaneously. The user is disconnected
  1107. immediately without any warning even if in the middle of a file up/download.
  1108. This should be regarded as a last resort 'Panic Button' only.
  1109.  
  1110. -------------------------------------------------------------------------------
  1111.  
  1112. Compressed message forwarding to/from NNA BBS.
  1113. The PMS is capable of forwarding messages in NNA bulk compressed format to
  1114. other stations using compatible code (NNA/NPFPMS)
  1115. To enable this function include a L in the EXT line in the NPFPMS.CFG file.
  1116.  
  1117. Compressed message forwarding to/from FBB BBS.
  1118. The PMS is capable of forwarding messages in FBB bulk ascii/compressed format
  1119. to other stations using compatible code (NNA/FBB/NPFPMS)
  1120. To enable this bulk ascii forwarding include the letters F in the EXT line in
  1121. the NPFPMS.CFG file. To enable this bulk compressed forwarding include the
  1122. letters B in the EXT line in the NPFPMS.CFG file.
  1123. (If you include the B, then you must also include the F)
  1124.  
  1125. Protocol errors sent out by FBB BBS's.
  1126. ----------------------------------
  1127. 0 : Binary packet is not of header (HD) type when receiving title.
  1128. 1 : Checksum of message is wrong.
  1129. 2 : Message could not be un-compressed.
  1130. 3 : Received binary frame is not DATA (DT), not EOT (ET).
  1131. 4 : Checksum of proposals is wrong.
  1132. 5 : Answer to proposals must start with "F" or "**".
  1133. 6 : Answer to proposals must be either "FF" or "FS".
  1134. 7 : More than 5 answers (with "+", "-" or "=") to proposals.
  1135. 8 : Answer to proposal is not "+", "-" or "=".
  1136. 9 : The number of answers does not match the number of proposals.
  1137. 10: More than 5 proposals have been received.
  1138. 11: The number of fields in a proposal is wrong (6 fields).
  1139. 12: Protocol command must be "FA", "FB", "F>", "FF" or "FQ".
  1140. 13: Protocol line starting with a letter which is not "F" or "*".
  1141.  
  1142. -------------------------------------------------------------------------------
  1143. Review mode.
  1144.  
  1145. A scroll back buffer is available. Press <Ctrl><Page up> to
  1146. activate. You may scroll backwards and forwards with the cursor keys, Page up,
  1147. Page down, Home and End keys. 
  1148. Press <Esc> to exit the review mode.
  1149.  
  1150. -------------------------------------------------------------------------------
  1151. Number formats.
  1152.  
  1153. The PMS will normally accept numeric input in the following formats.
  1154.  
  1155. Decimal         e.g.  1201
  1156. Hex             e.g.  &HA6  or  A6H  or  $A6
  1157. Binary          e.g.  &B100110  or  100110B
  1158. Octal           e.g.  &O102  or  &102
  1159.  
  1160. Invalid numbers (e.g. &HXYZ or &B56) will normally default to zero.
  1161.  
  1162. The highest valid Decimal number is  999999
  1163. The highest valid Hex number is      &H7FFF  (32767)
  1164. The highest valid Binary number is   &B111111111111111  (32767)
  1165.  
  1166. Out-of-range numbers will be forced to within the valid range for the command.
  1167. e.g.  R -6   will be forced to 0  (Negative numbers are invalid)
  1168.       R 1234567  will be forced to 99999  (The highest message number possible) 
  1169.  
  1170. The system will treat all numeric input as DECIMAL unless instructed otherwise!
  1171. Be careful when inputting binary flags (i.e. access flags) to prefix the input
  1172. with the correct notation.  0100110 is not the same as &B0100110 !
  1173.  
  1174. -------------------------------------------------------------------------------
  1175. Security.
  1176.  
  1177. Add the line:   SECURITY (character(s))   to the NPFPMS.CFG file.
  1178. If anyone logs on to the PMS using the SysOp's callsign, the extra character(s)
  1179. must be sent before the normal PMS> prompt will be seen. Anything else will
  1180. cause the PMS to terminate the connection. Choose characters that may go
  1181. unnoticed by a casual observer, rather than something obvious.
  1182. i.e.  .@-   would be far less obvious than  SYSOP
  1183.  
  1184. By default the security character is just two dots ..
  1185.  
  1186. -------------------------------------------------------------------------------
  1187. User Access flags.    0=un-set  1=set
  1188.  
  1189. These flags can be set for individual users by using the Edit User command:
  1190. EU <callsign>
  1191.  
  1192.         0000000000000000
  1193.         ^              ^
  1194.       bit 15          bit 0
  1195.  
  1196. Bit
  1197. 0   Connection allowed.    (Setting to 0 will lock a station out)
  1198. 1   (Reserved)
  1199. 2   File uploads allowed.
  1200. 3   File downloads allowed.
  1201. 4   (Reserved)
  1202. 5   System check flag.  0=new format.  1=old format.  DO NOT ALTER!
  1203. 6   3rd party reads allowed.
  1204. 7   3rd party sends allowed.
  1205. 8   (Reserved)
  1206. 9   (Reserved)
  1207. 10  (Reserved)
  1208. 11  (Reserved)
  1209. 12  SYSOP command allowed.
  1210. 13  (reserved)
  1211. 14  PMS SysOp.  1=for PMS SysOp ONLY.  0=any other user.
  1212. 15  Must be 0   DO NOT ALTER!
  1213.  
  1214. New users default to:                 0000 0000 0000 1111   Hex 000F
  1215. The PMS SysOp's entry should be:      0101 0000 1101 1111   Hex 50DF
  1216.  
  1217.  
  1218. ------------------------------------------------------------------------------
  1219. Other User flags.    0=un-set  1=set
  1220.  
  1221. These flags can be set for individual users by using the Edit User command:
  1222. EU <callsign>
  1223.  
  1224.         --BS-LPX
  1225.         ^      ^
  1226.       bit 7   bit 0
  1227.  
  1228. The first 3 can also be set by users with the X, P and LR commands. The others
  1229. can only be set by the SysOp with the EU command.
  1230.  
  1231. Bit
  1232. 0   Expert flag.     (X)         1=User is in Expert mode.
  1233. 1   List Pause flag. (P)         1=User Pause option is on (default)
  1234. 2   List order flag (LR).        0=List high to low.  1=List low to high.
  1235. 3   (Reserved)
  1236. 4   SHORT log-on flag.           1= Send short log-on text only.
  1237. 5   BBS flag.                    1= Station is a BBS
  1238. 6   (Reserved)
  1239. 7   (Reserved)
  1240.  
  1241. New users default to:  0000 0010
  1242. Set bit 5 for unattended or BBS stations. They do not want to see a lot of
  1243. log-on text!
  1244. Set bit 4 for regular users who no longer need, or want, the full log-on text.
  1245.  
  1246. ------------------------------------------------------------------------------
  1247. Files directory description file.
  1248.  
  1249. An ascii file called CONFIG\filedesc.txt is used to describe all the files
  1250. and sub-directories within the FILES section. See sample file.
  1251. You must edit this file to suit your files. The maximum number of entries
  1252. scanned in this file is limited by the TEXTBUFFERSIZE setting in the NPFPMS.CFG
  1253. file. Entries greater than this will be ignored.
  1254. If a file-type is not specified, COM EXE ZIP default to BIN and TXT DOC
  1255. default to ASC. A file description is not mandatory, but is best included.
  1256.  
  1257. -------------------------------------------------------------------------------
  1258. Text colours.
  1259.  
  1260. The monitored frames from each BPQ host port are displayed in a different
  1261. colour. The colours can be set in the NPFPMS.CFG file with the commands:
  1262. PORT1COLOUR  to  PORT16COLOUR  (All default to white)
  1263.  
  1264. Other colours are:
  1265. LOCALINCOLOUR   Defaults to light cyan. Mostly used for 'keyboard' text.
  1266. LOCALOUTCOLOUR  Defaults to cyan. Mostly used for 'command replies' text.
  1267. SYSTEMCOLOUR    Defaults to green. Mostly used for 'system' text.
  1268. ERRORCOLOUR     Defaults to light red. Used for error messages.
  1269. KEYBOARDCOLOUR  Defaults to white. 
  1270.  
  1271. Text colours on a VGA system are:
  1272. O   Black
  1273. 1   Blue
  1274. 2   Green
  1275. 3   Cyan
  1276. 4   Red
  1277. 5   Magenta
  1278. 6   Brown
  1279. 7   White
  1280. 8   Gray
  1281. 9   Light Blue
  1282. 10  Light Green
  1283. 11  Light Cyan
  1284. 12  Light Red
  1285. 13  Light Magenta
  1286. 14  Yellow
  1287. 15  High intensity White
  1288.  
  1289. -------------------------------------------------------------------------------
  1290. REQFIL, REQDIR, FNDFIL and WP servers.
  1291.  
  1292. These are described in the file USER.DOC, in the FILES directory.
  1293.  
  1294. -------------------------------------------------------------------------------
  1295. AutoList and AutoRead
  1296.  
  1297. Automatic listing and reading of mail from your NTSBBS
  1298. This will only work with NTSBBS's that switch to a short prompt after
  1299. receiving a [xxx-n.nn-$] type SID. (I know of none that don't...)
  1300.  
  1301. The PMS can automatically log on to your local NTSBBS and issue a sequence of
  1302. commands (contained in the file CONFIG\autolist.cmd) to download mail headers.
  1303. The autolist.cmd file will normally just contain a single 'L' list command, but
  1304. the file may contain any valid command(s).  e.g.  L> DEBATE   or   L@ GBR
  1305. All text received from the NTSBBS is written to the AutoList file.
  1306. This can be browsed/edited/deleted by using <Alt>F6  (Edit AutoList).
  1307. You should mark a message you wish the PMS to 'Read' next time with a # in the
  1308. first character position. This can be done by pressing the <Tab> key to
  1309. toggle the leading # on and off automatically.
  1310.  
  1311. The next time the PMS does an AutoList, it will also do a 'Read' of all the
  1312. messages in the list marked with a #. The messages will be added to the PMS
  1313. message base. After completing a successful read, the # in the AutoList list
  1314. will be changed to a *
  1315.  
  1316. You must specify the format of the BBS's message header for the To, From, BID
  1317. and/or MID, and Subject fields. For example,
  1318.  
  1319. My local NNA BBS uses the format:
  1320. To : xxxxxxxx
  1321. From : xxxxxx
  1322. Subject : xxxxxxx
  1323. BID: xxxxxxxx
  1324.  
  1325. A local FBB BBS uses the format:
  1326. To          : xxxxxx
  1327. From        : xxxxxx
  1328. Title       : xxxxxx
  1329. Bid         : xxxxxxxxx
  1330.  
  1331. The BBS BID header may be replaced my a MID header for personal messages.
  1332. So, for the NNA BBS, you could set up the NPFPMS.CFG file as:
  1333. AUTOTO        To :
  1334. AUTOFROM      From :
  1335. AUTOSUBJECT   Subject :
  1336. AUTOBID       BID:
  1337. AUTOMID       MID:
  1338. (It *may* be better not to include the : in case the number of spaces varies!)
  1339.  
  1340. For the FBB BBS, you could set up the NPFPMS.CFG file as:
  1341. AUTOTO        To
  1342. AUTOFROM      From
  1343. AUTOSUBJECT   Title
  1344. AUTOBID       Bid
  1345. AUTOMID       Mid
  1346.  
  1347. Note: Upper/Lower case IS significant.
  1348.  
  1349. This will enable the PMS to extract the relevant information from the NTS BBS's
  1350. message headers. If the PMS is unable to extract any of these fields correctly
  1351. then the message header, as displayed on the PMS, will be incorrect. This will
  1352. not cause any real problems as messages read in this way are given the status
  1353. ZN and are treated as personal messages. They cannot be read by anyone other
  1354. than the PMS SysOp, and will not be included in any forwarding sessions, or
  1355. appear in listings to other users of the PMS. (Unless THIRDPARTY is ON)
  1356.  
  1357. If there is no message header at all, or no R: routing line(s) then the PMS
  1358. will assume there is no valid message and the message will be abandoned.
  1359.  
  1360. Note:
  1361. The PMS can only extract the To/From/BID/Subject fields if the AUTOREADCMD is
  1362. set to V (verbose). If you set it to R (read) then you will not get the
  1363. original fields. Also the SR (SendReply) command can only work with messages 
  1364. read in verbose mode, as SR requires the R: routing lines to determine the 
  1365. originating BBS.
  1366.  
  1367. AUTOROUTE contains the connect path to your NTSBBS
  1368. e.g.  AUTOROUTE NTSX:GB7ESX    or    AUTOROUTE GB7NNA
  1369.       
  1370. You can cross connect via a KA node by using the 'X' option. e.g.       
  1371.       AUTOROUTE KEPAC3:X GB7DUG
  1372.  
  1373. (See 'Syntax of connect paths' for a full description of connect paths)
  1374.  
  1375. AUTOPROMPT contains the prompt the NTSBBS issues when it has finished sending
  1376. you text. The prompt will normally be something like:   GB7ESX BBS >
  1377.  
  1378. Some BBS's (FBB) prefix the prompt with a (variable) port number, and some
  1379. include the time (obviously variable!). So, what the PMS looks for is a line
  1380. ending with a > character, and including the specified prompt within the line.
  1381. If AUTOPROMPT is set (for example) to  GB7ESX BBS  then the PMS will accept
  1382. 2:GB7ESX BBS >   or   GB7ESX BBS 10:35 >   or just   GB7ESX BBS>
  1383. In the (unlikely) event of the prompt actually appearing in a message header or
  1384. content, then the AutoList/Read function will terminate prematurely, so make
  1385. the AUTOPROMPT as specific as possible.
  1386.  
  1387. IT IS MOST IMPORTANT TO GET THE PROMPT CORRECT.
  1388.  
  1389. If you do not set AUTOROUTE or AUTOPROMPT then the AutoList function will be 
  1390. inhibited.
  1391.  
  1392. Set the times to carry out the AutoList function in the NPFPMS.CFG file.
  1393. e.g.
  1394. AUTOLISTTIME hh:mm hh:mm  etc.....
  1395.  
  1396. The AutoList and AutoRead functions have been tested with a NNA BBS and, to a
  1397. lesser extent, with a FBB BBS. I do not know if they will work correctly with
  1398. any other type of BBS software. I would be pleased to hear if they do, or do
  1399. not!
  1400.  
  1401. -------------------------------------------------------------------------------
  1402. Monitor port mask options.
  1403.  
  1404. The monitor mask controls which radio ports are monitored, and what types of
  1405. frames are displayed. The PMS can monitor BPQ radio ports 1 to 12
  1406. The mask number is a 4 digit hexadecimal number.
  1407.  
  1408. The first digit is the frame mask, which sets the types of frames monitored.
  1409. The value is a hex number from 0 to F. It is a bit field where:
  1410. Bit 1 enables the display of NODES broadcasts.
  1411. Bit 2 enables the display of supervisory frames.
  1412. Bit 3 enables the display of NetRom frames.
  1413. Bit 4 is not used, and is always 0.
  1414. Normal frames containing data (text) are always displayed.
  1415. The default is 7 (bits 1-3 set) which means monitor all types of frames.
  1416.  
  1417. The last 3 digits of the number are the BPQ radio port mask.
  1418. The value is a 3 digit hex number from 000 to FFF. It is a bit field where:
  1419. Bit 1 enables monitoring of radio port 1
  1420. Bit 2 enables monitoring of radio port 2
  1421.  (...through to...)
  1422. Bit 12 enables monitoring of radio port 12
  1423. The default value of FFF (hex) means monitor all ports.
  1424.  
  1425. The full mask value will normally be 7FFF hex. The current value is displayed
  1426. on the lower status line as Mask-xxxx and can be changed with the F3 key.
  1427.  
  1428. -------------------------------------------------------------------------------
  1429. The system text editor.
  1430.  
  1431. The editor is not intended to be a full-blown word processor!
  1432. It should be sufficient for its purpose.
  1433. Note: All control codes, other than 13 (CR) and 26 (EOF), will be removed from
  1434. a text file loaded into the editor.
  1435.  
  1436. Whilst in the editor you can use the normal edit keys;
  1437. Insert, Delete, Backspace, 'Arrow' keys, Home, End, Page up, Page Down,
  1438. and Ctrl+(edit key) to move around the text. Automatic word wrap is used.
  1439.  
  1440. ^Y   Delete an entire line.
  1441. ^U   Re-insert the last line deleted, at the current line position.
  1442.  
  1443. ^KA  Copy a marked block to the current cursor position.
  1444. ^KB  Mark the start of a block.
  1445. ^KH  Clear the markers.
  1446. ^KK  Mark the end of a block.
  1447. ^KP  Print marked block. If no markers are set, nothing is printed!
  1448. ^KQ  Quit the editor without saving the text.
  1449. ^KR  Read another text file into the editor at the current cursor position.
  1450. ^KS  Save the text to disk and stay in the editor.
  1451. ^KV  Move marked block to the current cursor position.
  1452. ^KW  Append marked block to file.
  1453. ^KX  Save the text, then quit the editor.
  1454. ^KY  Delete a (small) marked block.
  1455. ^K\  Delete current editor file. (!)
  1456. <Enter> Will split a line, or create a blank line.
  1457. <Tab>  Inserts enough spaces to move the cursor to the next Tab position.
  1458. <Shift Tab> Moves the cursor back to the previous Tab position.
  1459.  
  1460. <Tab> moves the cursor to the next tab position, inserting spaces as required.
  1461. <Shift Tab> moves the cursor back one tab position.
  1462.  
  1463. ^ indicates a control key sequence. ^KR is <Ctrl>K followed by R
  1464.  
  1465. Note:
  1466.      The block markers may be incorrect if a word wrap occurs at the beginning
  1467.      or end of the marked block.
  1468.  
  1469.      You cannot save or delete any of the help files called with the ? command
  1470.      or the F1 key.
  1471.    
  1472. Editing a PMS message file.  (S/EM)
  1473. When editing a message file, DO NOT edit or delete the R: routing lines, as
  1474. that may upset the forwarding system.
  1475.  
  1476. If you wish to read the contents of another PMS message into the editor, then
  1477. you can refer to the PMS message in shortform. Assuming the message number to
  1478. read is 1234, then enter #1234 as the filename to read and the name will be
  1479. converted to MAIL\MSG01234.msg
  1480. If you actually need to read in a real file called #1234 then include the full
  1481. path in the filename.  e.g. \TEXT\#1234
  1482.  
  1483. -------------------------------------------------------------------------------
  1484. 7Plus files.
  1485.  
  1486. The PMS can automatically convert 7Plus files received as messages into
  1487. separate 7Plus files using the original file name extracted from the 7Plus
  1488. header.  e.g. If a multi-part 7Plus program has been sent to the PMS as message
  1489. numbers 201, 202 and 203 then enter the command:  D7 201 202 203
  1490. D7 is the command, followed by the relevant message numbers.
  1491. It will create 3 files in the 7PLUS\ sub-directory called xxx.P01 xxx.P02  and
  1492. xxx.P03 (The xxx being the original filename)
  1493.  
  1494. Note: The PMS does not actually decode the files.  It converts message files
  1495. into 7Plus files ready for decoding with 7PLUS.EXE
  1496.  
  1497. (7PLUS 2.02 is copyright (C) DG1BBQ)
  1498.  
  1499. -------------------------------------------------------------------------------
  1500.  
  1501. USER VARIABLES
  1502. --------------
  1503.  
  1504. The following variables may be used in SCRIPT files, and in the multi-line
  1505. configuration commands in the NPFPMS.CFG file.
  1506.  
  1507. The variable will be converted to the appropriate text when transmitted.
  1508. Any $x not listed below will be removed from the text.
  1509.  
  1510. Note: The case of the character is significant!
  1511.  
  1512. $$        The $ character itself.
  1513. $A        The day of the week.
  1514. $B        Bell.  Adds a ASCII code 7 to the text.
  1515. $C        Callsign of the user currently connected.
  1516. $D        USA Date. MM-DD-YYYY      e.g. 09-26-1992
  1517. $d        Date.     DD month        e.g. 26 Sep
  1518. $E        Date.     DD-MM-YY        e.g. 26-09-92
  1519. $e        Date.     DD-MM-YYYY      e.g. 26-09-1992
  1520. $F        Lowest message number.
  1521. $g        Date.     DD month YYYY   e.g. 26 Sept 1992
  1522. $I        SysOp's name.
  1523. $J        A New Line  (CR - ASCII 13)
  1524. $K        The currently connected users total number of log-on's.
  1525. $L        Highest message number.
  1526. $l        Users message pointer.
  1527. $M        "morning/afternoon/evening"  (Depending on time of day)
  1528. $N        Number of active messages.
  1529. $n        Number of unread messages for currently connected user.
  1530. $O        PMS callsign.
  1531. $o        The local NTSBBS callsign.
  1532. $P        The PMS channel number.
  1533. $S        Time signature.  e.g. gmt
  1534. $T        Current time.  hh:mm
  1535. $t        Current time.  hh:mm:ss
  1536. $U        Same as $X
  1537. $V        Software version.
  1538. $W        The currently connected users name.
  1539. $X        The currently connected users last log-on date. (dd-month-yyyy)
  1540. $x        The currently connected users last log-on date. (dd-month)
  1541. $Y        The currently connected users last log-on time. (hh:mm)
  1542.  
  1543. S0 to $9 are reserved for internal use. Do not use!
  1544. Any $x variable not listed above will be removed from the text.
  1545.  
  1546. Note:
  1547. The date separator depends on the setting of DATESEP in the NPFPMS.CFG file
  1548. It defaults to -
  1549.  
  1550. -------------------------------------------------------------------------------
  1551. Additional commands available to a valid Remote SysOp.
  1552.  
  1553. CF   EH   EU   EW   DR   DL   DK   DU   DW   FH  FL   KD   KY   LD   LH   LK
  1554. HM   LU   LX   LY   LZ   MF   MM   MS   MR   MS  RB   RK   RZ   SU   SY   SZ
  1555. UK   WU   RESTART   UNPLUG   PASSWORD
  1556.  
  1557.  
  1558. Additional commands only available at the keyboard.
  1559.  
  1560. AD   AU   D7   EM   EF   FD   PA   PL   SY   EXIT   *
  1561.  
  1562.  
  1563. -------------------------------------------------------------------------------
  1564. See the file FILES\USER.DOC for information about user commands.
  1565. See the file SYS\SYSOP.TXT for information about Sysop only commands.
  1566.  
  1567.  
  1568.  
  1569. ===============================================================================
  1570. DESQview interface
  1571. ------------------
  1572. NPFPMS is a 'DESQview aware' program. It can make the required calls to the
  1573. DESQview API to interface correctly with DV. It can also give up it timeslice
  1574. when just its idling, waiting for input.
  1575.  
  1576. The PMS command line switch /V has the following options:
  1577. /V   Disable all DV calls.
  1578. /V1  Enable 'DV critical' calls.
  1579. /V2  Enable 'release timeslice' calls.
  1580. /V3  Both.
  1581. If the PMS detects DESQview has been loaded it will enable all DV calls, unless
  1582. a /V option has been used on the command line. If DESQview has not been loaded
  1583. then all DV calls are disabled regardless of any /V option.
  1584.  
  1585.  
  1586. Suggested set-up for DESQview V2.3+ and a 386/486 PC
  1587.  
  1588. The PMS *should* work under DESQview on a 286, but its not been tested.
  1589. The BIOS must be dated 01/10/86 or later. The DESQview version must be 2.3 or
  1590. later.
  1591.  
  1592.  
  1593.   Program Name............: NPFPMS
  1594.   Keys to Use on Open Menu: PM                         Memory Size (in K): 590
  1595.  ──────────────────────────────────────────────────────────────────────────────
  1596.   Program...: C:\PMS\PMSCODE.EXE
  1597.   Parameters: /DX
  1598.   Directory.: C:\PMS\
  1599.  ──────────────────────────────────────────────────────────────────────────────
  1600.   Options:
  1601.                Writes text directly to screen.......: [N]
  1602.                Displays graphics information........: [N]
  1603.                Virtualize text/graphics (Y,N,T).....: [Y]
  1604.                Uses serial ports (Y,N,1,2)..........: [N]
  1605.                Requires floppy diskette.............: [N]
  1606.  
  1607.  
  1608.  
  1609.                       Change a Program Advanced Options
  1610.  
  1611.  System Memory (in K).......:   0   Maximum Program Memory Size (in K)..: 630
  1612.  
  1613.  Script Buffer Size.........:   0   Maximum Expanded Memory Size (in K):
  1614.  
  1615.  Text Pages: 1  Graphics Pages: 0   Initial Mode:        Interrupts: 00 to FF
  1616.  ──────────────────────────────────────────────────────────────────────────────
  1617.   Window Position:
  1618.     Maximum Height:  25       Starting Height:  25       Starting Row...:  0
  1619.     Maximum Width.:  80       Starting Width.:  80       Starting Column:  0
  1620.  ──────────────────────────────────────────────────────────────────────────────
  1621.  
  1622.   Close on exit (Y,N,blank)......: [N]  Uses its own colors..............: [Y]
  1623.   Allow Close Window command.....: [N]  Runs in background (Y,N,blank)...: [Y]
  1624.   Uses math coprocessor..........: [N]  Keyboard conflict (0-F)..........: [0]
  1625.   Share CPU when foreground......: [Y]  Share EGA when foreground/zoomed.: [Y]
  1626.   Can be swapped out (Y,N,blank).: [ ]  Protection level (0-3)...........: [2]
  1627.  
  1628.  
  1629.  
  1630. Notes:
  1631. 'Uses serial ports' is set to [N] as the PMS program does not use the serial
  1632. ports directly. Control of the serial ports is by the BPQcode, which must be
  1633. loaded BEFORE DESQview.
  1634.  
  1635. It *may* be possible to reduce the 'Memory Size' down from the 590K suggested
  1636. if the buffer sizes are kept small. Should the PMS stop with an ERROR 7,
  1637. or DESQview just aborts the PMS, it is most likely running out of memory!
  1638. An EXCEPTION 13 error can be generated by (Q)EMM386.SYS if the PMS does not
  1639. have enough memory to run one of its sub-programs (i.e. message compression).
  1640. *THE* most common reason for the PMS to fail to work correctly under DESQview
  1641. is lack of allocated memory!
  1642.  
  1643. I do not recommend trying to run more than one copy of the PMS under DESQview,
  1644. unless they are run from different sub-directories.
  1645.  
  1646. The PMS will make all the relevant calls to DESQview to prevent time-critical
  1647. events being interrupted.
  1648.  
  1649. -------------------------------------------------------------------------------
  1650. USER.DOC file
  1651.  
  1652. Please note that the format of the user.doc file is important as it is used by
  1653. the help system. If you edit the file do not remove the blank lines between
  1654. entries, or the leading spaces.
  1655. You may edit the actual text, but do not change the way it is set out.
  1656.  
  1657.  
  1658. -------------------------------------------------------------------------------
  1659. Log file.
  1660.  
  1661. The log file records the activity of the PMS. Most automatic functions and
  1662. errors are recorded in the system log. Also, if Log User is on, then most
  1663. activity that occurs while a user is connected will also be written to the log
  1664. file. Chat sessions are not logged, neither is the text generated by the
  1665. AutoList/AutoRead function, or the text from the 'monitor' function. The log
  1666. can be browsed/edited by pressing the F6 key to load the log file into the
  1667. editor. You must not delete the log file, or edit it from 'outside' whilst the
  1668. PMS is running!
  1669.  
  1670. *Warning*
  1671. Setting 'Log User' to on can result in the log file growing very rapidly!
  1672.  
  1673. -------------------------------------------------------------------------------
  1674.  
  1675. When a new message arrives for the SysOp (possibly from another channel) a
  1676. series of 5 pips will sound. The same signal is sounded (as a reminder) if a
  1677. Msg for:  beacon is transmitted which includes the SysOp's callsign.
  1678. The Scroll Lock LED on the keyboard will also flash, if SCROLLFLASH is ON in
  1679. the config file.
  1680.  
  1681. -------------------------------------------------------------------------------
  1682. BID's and MID's
  1683.  
  1684. Bulletin ID's are stored in a file called SYS\bids.rec
  1685. This file should be 'pruned' occasionally (every few months?) to remove oldest
  1686. entries. The larger the file grows, the slower the duplicate checking will be.
  1687. You can use the system editor for this, as the file is in ascii format.
  1688. The <Shift>F6 key will load the bids.rec file into the editor.
  1689.  
  1690. -------------------------------------------------------------------------------
  1691. Testing the PMS locally.
  1692.  
  1693. You can connect from one PMS window to another to test the system.
  1694. e.g.
  1695. Select window 00
  1696. Press F10 to connect to the BPQ switch.
  1697. Type C G8NPF-3   (or whatever the PMS's callsign is)
  1698. (Enter your security characters, if appropriate.)
  1699. You will now be connected to the PMS as if you had connected 'over the air'
  1700.  
  1701.  
  1702. ===============================================================================
  1703. Restricting the range of messages Listed and Read.
  1704. The 'A' and 'R' parameters.
  1705.  
  1706. In order to speed up searches, most list commands only operate on a restricted
  1707. range of messages. The basic L (List) command only scans messages added since
  1708. the user last did a List. Most other List and Read commands only scan messages
  1709. added since the users last log-on. To force these commands to search ALL the
  1710. messages on the system, append an A to the command.
  1711. e.g.    L A
  1712.         LG OS2 A
  1713.         L< G8NPF A
  1714.  
  1715. Some commands normally search the entire message base by default. To restrict
  1716. these commands to searching 'new' messages only, append an R to the command.
  1717. e.g.    LX R
  1718.         LM R
  1719.         
  1720. If you have a large number of messages in the message base, then some List
  1721. commands can still result in very long lists.
  1722. (i.e. A new user logs on and types L, or the SysOp uses the LX command.)
  1723. You can set a limit to the number of messages listed by any of the List
  1724. commands, with the MAXLIST setting in the NPFPMS.CFG file.
  1725. MAXLIST defaults to 50. If recent messages have been killed or deleted, then you
  1726. may get somewhat less than the expected maximum.
  1727.  
  1728.  
  1729. Note:
  1730. A users message pointers are updated automatically when the user disconnects
  1731. with the (B)ye (or Q) command .
  1732. To update your (the SysOp's) message pointers, just type B at a command line.
  1733.  
  1734. -------------------------------------------------------------------------------
  1735.  
  1736. Misc. notes regarding the BPQCFG
  1737.  
  1738. The PMS callsign is read from the BBSCALL entry in the BPQCFG.BIN file.
  1739.  
  1740. The PMS "Message for:" beacon will be transmitted on all BPQ ports that have an
  1741. UNPROTO path set in the BPQCFG file.  (UNPROTO=MAIL)
  1742.  
  1743. The BPQ directory specified by the BPQDIR option must contain the file
  1744. BPQCFG.BIN (read by the PMS on start-up) and the file BPQNODES.COM if you have
  1745. BPQNODESAVE set ON
  1746.  
  1747. There is no need to specify any TNCPORT's for Host Mode operation.
  1748.  
  1749. -------------------------------------------------------------------------------
  1750. Automatically changing the @BBS field on incoming messages.
  1751.  
  1752. The file CONFIG\change.bbs holds a list of @BBS fields to be replaced and the
  1753. revised field.
  1754.  
  1755. i.e.
  1756. ESX #ESSEX              will replace @ESX with @#ESSEX
  1757. GB7NNA GB7ESX           will replace @GB7NNA with @GB7ESX
  1758. GB GBR.EU               will replace @GB with @GBR.EU
  1759.  
  1760.  
  1761. -------------------------------------------------------------------------------
  1762.  
  1763. Message on hold.
  1764.  
  1765. There is a facility to place 'on hold' all incoming messages addressed TO or
  1766. FROM a specific callsign, all messages addressed @ a particular BBS, or all
  1767. messages sent by a particular station regardless of the TO or FROM fields.
  1768.  
  1769. Enter a list of callsign's to be held in the file  CONFIG\hold.lst
  1770. One callsign per line. SSID's are ignored.
  1771.  
  1772. i.e.
  1773. > G9AAA
  1774. < G9AAA
  1775. < G9BBB
  1776. @ GB9XXX
  1777. B GB9ZZZ
  1778.  
  1779. Will hold all messages addressed TO or FROM G9AAA, all messages FROM G9BBB,
  1780. all messages addressed to stations @ GB9XXX, and ALL messages sent by the
  1781. station GB9ZZZ regardless of the TO or FROM fields.
  1782.  
  1783. Messages are flagged as as type H. (PH BH)  Only the SysOp can list or read
  1784. these messages. The SysOp can hold a message manually with the HM command,
  1785. and clear it with the UH command. The LH command will list all held messages.
  1786.  
  1787. -------------------------------------------------------------------------------
  1788. DOS * commands.
  1789.  
  1790. There is LIMITED support for DOS commands entered at the pms> prompt.
  1791. Commands must be pre-fixed with a * character.  i.e.  *DIR /W
  1792. You should restrict useage to 'simple' DOS commands, and avoid 'advanced'
  1793. commands that may corrupt the memory/environment in use by the PMS.
  1794.  
  1795. Be VERY careful with DOS commands as it is possible to do things that may
  1796. corrupt the PMS code, or change files the PMS is using.
  1797.  
  1798. Avoid using commands that may prompt for input, as you will not see the prompts
  1799. and will have to type in blind what DOS expects as input.
  1800. For example, if you type *TIME on its own, DOS will prompt for a new time. You
  1801. will not see this prompt!  DOS will then just wait for you to type a new time.
  1802. Typing  *TIME 20:15  would reset the DOS (and PMS) clock to that time.
  1803.  
  1804. If you get stuck, Ctrl/C or Ctrl/Break will often terminate a DOS command.
  1805.  
  1806. Please note that whilst an external DOS command is executing, *ALL* the PMS
  1807. windows are frozen. If you use a DOS command that takes a long time to execute,
  1808. or waits for user input, the PMS will be prevented from functioning.
  1809.  
  1810. -------------------------------------------------------------------------------
  1811. Password protection for users and forwarding sessions.
  1812.  
  1813. The pms supports 'NNA style' password protection for both normal users and for
  1814. PMS<>BBS forwarding sessions. To enable the latter, include a V in the pms SID.
  1815.  
  1816. Before a user can have password facilities he must first be issued with a
  1817. password matrix like the one below. Each users matrix will be different.
  1818. A password matrix can be generated by entering the command PASSWORD <callsign>
  1819. This will create a matrix for the specified callsign called CONFIG\xxxxxx.mat
  1820. where xxxxxx is the callsign. Toggle the printer on (f9) if you want a printed
  1821. copy of the matrix to send to a user. If you wish to generate a new matrix for
  1822. an existing entry, you must delete the existing file first.
  1823.  
  1824.  
  1825. Example matrix.
  1826.                   0 1 2 3 4 5 6 7
  1827.                         
  1828.               0   A b F $ 7 : j u
  1829.               1   1 H J & : F S H
  1830.               2   H F R T & 5 4 c
  1831.               3   b f $ S ! J N B
  1832.               4   J k y f % 5 2 0
  1833.               5   + G D 3 $ y f 5
  1834.               6   = g h E x v \ j
  1835.               7   R p * X ; Y C d
  1836.  
  1837. The matrix is numbered 0 - 7 down (the first of the double numbers) and 0 - 7
  1838. across (the second of the double numbers).
  1839.  
  1840. The user logs onto the PMS in the normal way where they can read mail, download
  1841. files etc. However, before they can SEND or KILL a message they will have to
  1842. enter a @ character at the prompt and wait. The PMS will return 3 pairs of
  1843. numbers.
  1844.  
  1845. They must then check their personal password matrix and enter the correct
  1846. characters without spaces. The password is case sensitive so it must be entered
  1847. exactly as it's laid out in the matrix.
  1848.  
  1849. In the above example matrix, if the PMS sent 21 54 27 the user would enter F$c
  1850.  
  1851. The first pair of numbers is 21   -  2 down, 1 across  = F
  1852. The second pair of numbers is 54  -  5 down, 4 across  = $
  1853. The third pair of numbers is 27   -  2 down, 7 across  = c 
  1854.  
  1855. There must be no spaces and upper and lower case letters must be entered just
  1856. as they are in the matrix.
  1857.  
  1858. No acknowledgement is given to say if the password was entered correctly or not.
  1859. Incorrect replies will be ignored so they can send @ and answer as many times
  1860. as they like. This adds further security to the password.
  1861.  
  1862. If the password has not been correctly entered, the user will receive the
  1863. message "This message will be held" if they try to send a message. If this
  1864. happens they can enter * to cancel the message and follow the above
  1865. instructions again (or carry on and have the message held).
  1866.  
  1867.  
  1868. For automatic forwarding sessions both the PMS and the BBS you are forwarding
  1869. to/from must have the same matrix. If both stations have a V in the SID them
  1870. the password is sent automatically. Incorrect password or missing matrix will
  1871. result in a disconnect! If you wish to use your NTSBBS's alias, rather than its
  1872. real callsign (i.e. ESXBBS rather than GB7ESX) then you will need a duplicate
  1873. matrix for the alias. (Just copy the matrix GB7xxx.MAT to xxxBBS.MAT)
  1874.  
  1875.  
  1876. The password protection operates as follows:-
  1877. Assuming you always have a V in your pms SID...
  1878.  
  1879. Manual incoming connections.
  1880. ----------------------------
  1881. 1.  A 'normal' user connects, for whom you DON'T have a password matrix stored:
  1882.     No password matrix means password protection is not used.
  1883.     The @ command has no effect. It is just ignored.
  1884.  
  1885. 2.  A 'normal' user connects, for whom you DO have a password matrix stored:
  1886.     Valid password matrix means password protection is used.
  1887.     If the user sends a valid password (with the @ command), then the user can
  1888.     send messages normally, otherwise any messages sent are 'held for SysOp's
  1889.     attention. An incorrect password response is simply ignored.
  1890.  
  1891.  
  1892. Automatic incoming connections.
  1893. -------------------------------
  1894. 1.  A bbs user connects, for whom you DON'T have a password matrix stored:
  1895.     The bbs user sends his SID [..-BFHLM$]  (No V)
  1896.     No V in the incoming SID means no request for a password is made.
  1897.     Normal forwarding takes place.
  1898.  
  1899. 2.  A bbs user connects, for whom you DON'T have a password matrix stored:
  1900.     The bbs user sends his SID [..-BFHLMV$]  (with a V)
  1901.     A V in the incoming SID, with no valid password matrix for the user, means
  1902.     the user is immediately disconnected.
  1903.  
  1904. 3.  A bbs user connects, for whom you DO have a password matrix stored:
  1905.     The bbs user sends his SID  [..-BFHLM$]    (No V)
  1906.     No V in the incoming SID means no request for a password is made.
  1907.     Normal forwarding takes place, but the valid password matrix means that any
  1908.     incoming messages are 'held for SysOp's attention.
  1909.  
  1910. 4.  A bbs user connects, for whom you DO have a password matrix stored:
  1911.     The bbs user sends his SID  [..-BFHLMV$]   (With a V)
  1912.     A V in the incoming SID causes a password to be requested automatically.
  1913.     If a valid password is received, the user can forward messages normally.
  1914.     If a invalid password is received then the user is disconnected.
  1915.  
  1916.  
  1917. A normal user is a user who does not send a SID when connecting.
  1918. A bbs user is a user using PMS/BBS software that sends a SID [....] when it
  1919. connects to another station in automatic mode.
  1920.  
  1921. The password system also operates when a user tries to KILL messages.
  1922.  
  1923. So, if a pirate used the callsign of someone who had arranged for a password at
  1924. the BBS/PMS, the best the pirate could achieve is to send a message that was
  1925. placed 'on hold', and would not be forwarded on anywhere until the SysOp
  1926. released it. If the contents were 'dubious' them the SysOp would contact the
  1927. supposed sender first, to verify if the message was genuine.
  1928.  
  1929. To disable the automatic 'bbs' password verification, remove the V from the
  1930. PMS's SID and remove the appropriate password matrix file.
  1931. To disable a 'normal users' password verification, remove the users password
  1932. matrix file.
  1933.  
  1934. Remember, a matrix is created at random, so if you delete a users matrix, and
  1935. then generate a matrix for the user again, the new matrix will be different
  1936. from the old one. You would then need to send the new matrix to the user.
  1937. If you only wish to remove a matrix file temporarily, just rename xxxxx.MAT to,
  1938. say, xxxxx.OLD  You can then re-instate it easily, without having to generate a
  1939. new matrix.
  1940.  
  1941. ------------------------------------------------------------------------------
  1942.  
  1943. Importing messages from disk file.
  1944. ----------------------------------
  1945. The PMS can import messages from a disk file (plain text, NNA BBS format)
  1946. The command is: IMPORT (drv:)filename.ext
  1947. (Where 'filename.ext' is the name of the file to import).
  1948. Messages are read from the file as if they were being forwarded to the PMS. The
  1949. BID's checking works as normal, so the PMS will not import duplicate messages.
  1950.  
  1951.  
  1952. Exporting messages to a disk file.
  1953. ----------------------------------
  1954. Exporting messages to a file is an extension of the forwarding system.
  1955. EXPORT is a 'special callsign' which is used to create the export file. 
  1956. To manually create an export file, use FD EXPORT (options)  The options are the
  1957. same as those normally used with the FD command. The 'forwarded' messages are
  1958. written to a file call \PMS\EXPORT.BBS
  1959. This file can then be copied to a floppy disk with:  *COPY EXPORT.BBS A:
  1960.  
  1961. An export file can be created automatically by including an entry in the
  1962. config\fwdfile.lst using the 'special callsign' EXPORT (options) i.e.
  1963. EXPORT @GB7ESX >ALL
  1964. (For a list of the available options, see the FD command).
  1965.  
  1966. Normally, once a message has been exported to the export file it is marked as
  1967. such, and will not be exported again. You can force the PMS to export messages
  1968. a second time by placing a -D at the end of the EXPORT command. That will
  1969. inhibit the duplicate checking.
  1970.  
  1971. ------------------------------------------------------------------------------
  1972. Deleting messages 'Locked by another channel'
  1973.  
  1974. If the PMS code aborts while a message is being sent, you may end up with a
  1975. zero length message which shows in the listings something like:
  1976. Msg#  TS  Size  Date   (etc...)
  1977. 1234  Cn     0  28-Jul (etc.....)
  1978.  
  1979. (The Cn indicates the message was coming from channel n)
  1980. Attempting to delete the message with the DL command may produce a response
  1981. like 'Locked by another channel?'
  1982.  
  1983. To delete the message, first use the 'Mark Normal' command.
  1984. Assuming message number 1234, type:
  1985. MN 1234
  1986. Then you can delete it as normal.
  1987.  
  1988. WARNING:
  1989. Only use this method to delete 'crashed' messages.
  1990. DO NOT use it on a message that is actually being entered on another channel!
  1991.  
  1992. ------------------------------------------------------------------------------
  1993.  
  1994. Re-numbering.
  1995. -------------
  1996. The re-number function is an external program which will renumber the all PMS
  1997. messages to 101 upwards. The PMS must be closed down before this program is run.
  1998.  
  1999. Don't re-number 'just for the sake of it'. Remember that message BID's are
  2000. generated from the message numbers, and if you re-number too often then the PMS
  2001. may produce a duplicate BID, which may then be refused if you attempt to
  2002. forward it to a BBS that has already received a message with the same BID.
  2003. Re-numbering should only be required if the message numbers approach the
  2004. highest valid number (99999) or a computer 'crash' has affected the numbering.
  2005.  
  2006. ------------------------------------------------------------------------------
  2007. Automatic connection to other nodes. (When forwarding etc.)
  2008.  
  2009. Different types of nodes can produce a variety of 'connect' text. Net-Rom & BPQ
  2010. nodes, when connected to at Level 4, using the real callsign of the node,
  2011. normally just send 'Connected to xxxxx' or 'Failure with xxxxx' This is the
  2012. normal type of reply the PMS expects, to determine if the connection has been
  2013. successful or not. However, if connections are made at level 2, using the 
  2014. node's alias, or the node is a KA Node, then the text can be several lines
  2015. long, and quite varied!
  2016.  
  2017. To allow for this you can specify up to 5 text strings (in the NPFPMS.CFG file)
  2018. for determining if a connection to a node has succeeded or failed, with the
  2019. commands:  NODECONN <text>  and  NODEFAIL <text>
  2020. See the settings in the sample NPFPMS.CFG file.
  2021.  
  2022. When the PMS connects to a node, it will check all the text strings specified,
  2023. looking for a match within the nodes reply text, to determine if the connection
  2024. was successful or not. Any node reply text not containing any of the specified
  2025. text strings will be ignored.
  2026.  
  2027. e.g. If you set:
  2028. NODEFAIL  FAILURE WITH
  2029. NODEFAIL  BUSY FROM
  2030. NODECONN  CONNECTED TO
  2031. NODECONN  LINK MADE
  2032.  
  2033. Then, if the PMS receives any text from the node containing 'Failure with' or
  2034. 'Busy from' it will assume the connect failed. If is sees any text containing
  2035. 'Connected to' or 'Link made' it will assume the connection succeeded.
  2036.  
  2037. You can specify up to ten NODECONN strings, and up to ten NODEFAIL strings.
  2038. Any more will be ignored.
  2039.  
  2040. Note: The case of the received text is not important. Lower case text is
  2041. converted to upper case.
  2042.  
  2043. ------------------------------------------------------------------------------
  2044.  
  2045. Registering the PMS.
  2046. --------------------
  2047. If you decide to use the PMS code on a regular basis, and have not previously
  2048. registered, then the requested registration fee is 15.00 pounds. That will help
  2049. reward the many hundreds of hours work that have gone into writing the PMS code!
  2050.  
  2051. You must state the callsign to be used with the PMS. You will then receive a
  2052. registration number which will remove the  ** Un-registered copy of NPFPMS **
  2053. line from outgoing messages, when the PMS is used with the stated callsign,
  2054. and you will be added to the 'registered users' list.
  2055.  
  2056. Cheques made out to 'E' Harrison please, not 'T ' (Ted is only a nickname!)
  2057.  
  2058. IF YOU WANT SUPPORT, THEN REGISTER!
  2059.  
  2060. To use the registration number, add the following line to your NPFPMS.CFG file:
  2061. REGISTRATION  <number>
  2062.  
  2063. Please note, the registration number only works with the callsign stated. If
  2064. the PMS is used with a different callsign, then the registration number has no
  2065. effect. Another user cannot use your registration number!
  2066.  
  2067.  
  2068. ==============================================================================
  2069. ==============================================================================
  2070.  
  2071. Finally.......
  2072.  
  2073. PLEASE report any bugs or other problems you come across. I can't check
  2074. everything under all conditions, and welcome ANY feedback from users.
  2075. A lot of improvements have been as a result of suggestions and/or bug reports.
  2076. Thank you...
  2077.  
  2078.  
  2079. 73 Ted.
  2080. NTS       G8NPFX@GB7ESX.#31.GBR.EU
  2081. Internet  tedharrison@compulink.co.uk
  2082. (AMPRNet   g8npf@g8npf.ampr.org  44.131.16.148)
  2083.  
  2084.