home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / hamradio / mb1501a.zip / MB1501A.EXE / README.DOC < prev    next >
Text File  |  1992-11-25  |  16KB  |  407 lines

  1.  
  2.      Created for packet community by:
  3.  
  4.       Hank Oredson, W0RLI
  5.       21390 Shannon Lane
  6.       West Linn, OR 97068
  7.  
  8.   Several people have kindly volunteered to act as regional coordinators
  9.   for questions, bug reports, etc.  Those I know about are:
  10.  
  11.   G4WPT  @ G4WPT  -  For the U.K.
  12.   JA1KSO @ JA1KSO -  For Japan and the Far East.
  13.   LU3AGJ @ LU3AGJ -  For Latin America.
  14.   VE3GYQ @ VE3GYQ -  For North America.
  15.  
  16.   N6IYA  @ N6IYA  -  John can provide the MailBox on floppy disk.
  17.              Any flavor of 5 or 3 inch diskette.
  18.              The MailBox files are more than 360k, so if you
  19.              require 360k disks, send two ...
  20.              Self-addressed mailer and formatted diskette required.
  21.              John Smith, 1060 Pine Drive, Felton, CA 95018
  22.              New releases go first to John for test, then to:
  23.  
  24.   WA6RDH @ WA6RDH -  New versions are placed on the WA6RDH dialup system:
  25.              (916) 678-1535
  26.  
  27.  
  28.  
  29.      The code will run under DoubleDOS, DESQView, Windows, or OS/2.
  30.  
  31.  
  32.        Running multiple copies of the MailBox.
  33.  
  34.      To run multiple copies, simply execute MB again in another window
  35.      or partition. All files and ports may be shared by up to 16 copies
  36.      of MB. Each copy will create it's own log file.
  37.  
  38.  
  39.  
  40.  
  41.   If you are upgrading from a version 11, 12, or 13 release, MB will
  42.   automatically update your existing MAIL.MB amd WP.MB to a new file version.
  43.   This may take some time, and will cause a lot of disk activity.
  44.   No extra disk space is required.  Just be patient, it will finish.
  45.  
  46.   *** Notice: if you are upgrading from a version prior to V11.0, there
  47.   is something you must do before you continue. There was a change to
  48.   the structure of the WP database in V11. If you now run a version
  49.   prior to 11.0, before you even think of reading this any further,
  50.   save your current WP database using the IA command: IA WP.TXT
  51.  
  52.   Ok, that worked, right?
  53.  
  54.   Now delete or rename your old WP.MB
  55.  
  56.   When you bring up the new version for the first time,
  57.   reload your WP database:
  58.   IR WP.TXT
  59.   That is all there is to it.
  60.  
  61.  
  62.   Each of the major functions of the MailBox runs in it's own window.
  63.   For the MailBox itself, there can be several windows running at the
  64.   same time, each serving a different user.
  65.  
  66.   MB.EXE - the MailBox.
  67.  
  68.   MBSTAT.EXE is separate function that can be run in it's own small window.
  69.   It provides a running display of current MailBox activity.
  70.  
  71.   NW.EXE, The Net Walker, is a tool for tracing the connectivity of a
  72.   NET/ROM or TheNet network.
  73.  
  74.   LM.COM, the MailBox "Lock Manager", becomes resident at
  75.   system startup and provides various services to the MailBox.
  76.   LM must be run prior to starting DESQview.
  77.  
  78.   MBINIT.EXE, the MailBox initialization, is also called at system startup.
  79.   It loads global data into LM, checks that the TNC's are alive,
  80.   and provides other startup functions.
  81.  
  82.   I recommend that you use the G8BPQ switch as interface to your COM
  83.   ports.  For those that do not wish to use the switch, or cannot,
  84.   a simple COM port driver is provided:
  85.  
  86.   FBIOS.COM, the Serial Port Handler, is loaded at system startup to
  87.   provide replacement for the DOS provided COM ports.
  88.   Note that FBIOS does not handle the MS-400 type 4 port cards.
  89.   For those cards, I suggest you use MBBIOS, provided by AA4RE.
  90.  
  91.   FBIOS, MBBIOS, or the G8BPQ switch must be run prior to starting DESQview.
  92.  
  93.   MBSTAT.EXE   -  MailBox status display.
  94.  
  95.   RECOVER.EXE  -  Message and User database recovery program.
  96.  
  97.   SERVER.EXE, the Server function, is a general server interface.
  98.   It can be used to call user written modules that extend the functionality
  99.   of the MailBox. A very simple server called ECHO (source and executable)
  100.   is provided as an example of how to create a server. Many servers are
  101.   now available for use with the MailBox. Some examples are:
  102.  
  103.   ECHO     - Created by W0RLI, returns a message.
  104.   FILEX  - Created by W0RLI, provides REQFIL, REQDIR, and upload functions.
  105.   REQDIR - Created by WB3AFL.
  106.   REQFIL - Created by WB3AFL.
  107.   REQCB  - Created by W0RLI for the J-Comm and RT Systems Callbook databases.
  108.   SMTP     - Created by K3MC, provides MailBox/smtp message interchange.
  109.  
  110.   See SERVER.DOC for more information about servers.
  111.  
  112.  
  113.   PRTLOG.EXE is a MailBox log file analyzer. It can be used to produce
  114.   summary reports of MailBox activity.
  115.  
  116.  
  117.  
  118.   The MailBox Directory path (\BBS) is hardwired.
  119.   All MailBox data files (*.MB) and all message files go into this
  120.   directory.  The executables may, of course, go anywhere you like.
  121.  
  122.   Thank you all for testing the previous versions, and thank you
  123.   in advance for testing this version as well. The changes in commands,
  124.   and any bug fixes, are noted in CHANGES.MB. As usual, there are
  125.   probably changes in INIT.MB, CONFIG.MB, and PORTS.MB.
  126.  
  127.   Run MBINIT to reset the MailBox system if a task crashes.
  128.   DO NOT run LM or MBINIT if any tasks are running,
  129.   exit from all tasks first.
  130.  
  131.   Minimum system requirements: IBM AT, or XT with V20 processor.
  132.   It is possible to run the code without a hard disk, but NOT recommended.
  133.  
  134.   The number of ports, port speed, and number of tasks that
  135.   can be run depend on the speed of the system. Assuming 1200
  136.   baud radio data rate and 9600 baud tnc to computer data rate
  137.   the following guidlines apply. With a "standard" 6 Mhz. AT,
  138.   four or five ports with four to six tasks can be run.
  139.   With a "standard" 4.77 Mhz XT (with V20), two ports and two
  140.   or three tasks will work. With a fast 386, at least six ports
  141.   with eight tasks are ok. I have tested a 6 Mhz AT with two 1200
  142.   baud radios, one 19,200 baud computer/computer link and
  143.   one 300 baud radio. It worked ok. See DV.DOC for more details.
  144.   I presently run a 25 Mhz 386DX with 6 radio ports (1 - 300, 1 - 9600,
  145.   4 - 1200 baud) and one wire link at 19,200 baud, with 8 tasks.
  146.  
  147.   Kantronics KPC-4 and KAM require firmware revision 2.85 or later.
  148.   TNC2 should have firmware V 1.1.5 or later.
  149.   TNC1 should be run no faster than 4800 baud.
  150.  
  151.  
  152.   1) Backup all files in the MailBox directory (\BBS).
  153.      In case something goes wrong, you will be able to restore
  154.      everything to where it was without loss of messages.
  155.  
  156.   2) Customize Edit INIT.MB, MOTD.MB, INFO.MB, CONFIG.MB, NEWUSER.MB,
  157.      FWD.MB, DIST.MB for your site and configuration.
  158.  
  159.      Put in your call, name, qth, and zip (or postal) code in the appropriate
  160.      places. Set up various subdirectories for user files and for MailBox working
  161.      files. Setup the port definitions to correspond to the hardware on your
  162.      computer.
  163.  
  164.      Verify that all files required by the MailBox are
  165.      in the MailBox directory (\BBS).
  166.  
  167.   3) Make certain CONFIG.SYS and AUTOEXEC.BAT have parameters
  168.      set to handle the MailBox. Here is a typical example:
  169.  
  170.      In CONFIG.SYS (example) :
  171.  
  172.      files   = 60      <- Roughly 8-10 per MB task
  173.      buffers = 60      <- With DoubleDOS, make this 20
  174.      stacks  = 0,0     <- You may need 16,64, or 0,0 depends on DOS version
  175.  
  176.      In AUTOEXEC.BAT (example) :
  177.  
  178.      share     <-  Load the DOS SHARE command.
  179.      lm      <-  Load the MailBox lock manager.
  180.      bpqcode     <-  Load the g8bqp switch.
  181.      ytnc 20 2 1 <-  Required for version 4.05 or later of bpq switch.
  182.      mbinit     <-  Initialize the MailBox.
  183.  
  184.  
  185.   4) In case of crash:
  186.      It is most important, if the system crashes for any reason,
  187.      to do the following, in this order:
  188.  
  189.      CHKDSK /F
  190.      RECOVER
  191.      MBINIT
  192.  
  193.      This will gaurantee that there is no loss of data.
  194.      It is smart to put the CHKDSK /F and RECOVER into your AUTOEXEC.BAT
  195.      so they are always run at system startup.
  196.  
  197.   It is a good idea to run some sort of disk cache.  The MailBox can
  198.   be quite disk intensive.  HYPERDisk, NORTON Cache, and other popular
  199.   disk caches all appear to work well.    If you enable "delayed write"
  200.   this will speed things considerably.
  201.  
  202.  
  203.   Approximate window sizes required:
  204.  
  205.  
  206.      FT     - 40k
  207.      MB     - 74k
  208.      MBSTAT - 25k
  209.      MON    - 50k
  210.      NW     - 40k
  211.      SERVER - 125k  (minumum, this will support the ECHO server)
  212.           300k  (this will support most any server)
  213.  
  214.   If things do not work right, increase the window size until they do.
  215.  
  216.  
  217.          Known restrictions.
  218.  
  219. There can be at most 110 pending different message destinations. These
  220. are the calls that show in the beacon text plus any calls in AT fields
  221. of messages that have not been forwarded. The only time this might cause
  222. a problem is if you keep many bulletins on the system, and they are
  223. not marked as read ("Y") or forwarded ("F").
  224.  
  225.  
  226. -------------------------------------------------------------------------
  227.  
  228.          Message manipulation.
  229.  
  230. One problem that confronts the sysop from time to time is the message
  231. that has the wrong type, wrong distribution list, etc. There are two ways
  232. to correct this problem.
  233.  
  234. 1) Use the "E" command and edit the message header. Because of the many
  235.    possibilities, this command is limited in scope. For simple changes,
  236.    such as "unkilling" a message, it will work. It will not create a
  237.    distribution list.
  238.  
  239. 2) Copy the message to a file and then make a new message.
  240.    This is simpler than it sounds. It requires two commands.
  241.    Here is an example. Assume someone sent a message to KB6BHN, and
  242.    instead of using SP KB6BHN @ W0RLI used instead SB KB6BHN @ ALLUSA.
  243.    Assume it was message number 325.
  244.  
  245.    First put the message into a file using the F command:
  246.    F 325 J
  247.    This puts the message into file J.
  248.  
  249.    Then make the new message:
  250.    MP J KB6BHN @ W0RLI
  251.    You can either enter the orignal title, or, since you had to do
  252.    all this work to correct a users error, just give the new message
  253.    a blank title!
  254.  
  255.    Now kill the orignal message.
  256.    K 325
  257.  
  258. -------------------------------------------------------------------------
  259.  
  260.      PRTLOG.EXE - The log file analyzer.
  261.  
  262.     PRTLOG OUT.PRT -opt
  263.  
  264. The output is placed in file OUT.PRT.
  265.  
  266. Options: -L lists the entire log.
  267.      With no options you get the usual monthly summary.
  268.  
  269. PRTLOG prompts for the names of log files to process.
  270.  
  271.  
  272.        Log file format
  273.  
  274.    Each line in the log file contains an event code, the date and time,
  275.    followed by further information about the event.
  276.  
  277.    'C' - User connected to system.
  278.  
  279.       'A' -> 'K' - A user connected on that port.
  280.     Next char shows type of connect: "U" - User, "S" - bbs.
  281.  
  282.       'L' - User was linked via the station that just connected.
  283.       'S' - "connect" from local console (sysop).
  284.  
  285.    'X' - Exit.
  286.  
  287.       'A' - Owner put MailBox on line.
  288.       'B' - User said good bye.
  289.       'D' - User disconnected.
  290.       'E' - Excluded user attempted connect.
  291.       'F' - User forced off by sysop.
  292.       'I' - Pogram startup. Note: connect on port I will have IS or IU.
  293.       'Q' - Exit from program.
  294.       'T' - Timeout, forced disconnect.
  295.  
  296.    'F' - File event. Command line shown as user entered it.
  297.  
  298.       'D'  - File downloaded.
  299.       'K'  - File deleted.
  300.       'U'  - File uploaded.
  301.  
  302.    'M' - Message event. Message number always shown.
  303.  
  304.       'D'  - Message copied to file.
  305.       'E'  - Message exported.
  306.       'F'  - Message forwarded.
  307.       'FE' - End of forwarding session.
  308.       'FR' - Start of reverse forwarding within forwarding session.
  309.       'FS' - Start of forwarding session.
  310.       'FZ' - Message forwarded. Message size shown.
  311.       'K'  - Message killed. Note KS is auto-kill of old bulletin.
  312.       'P'  - Message printed.
  313.       'R'  - Message read.
  314.       'SE' - End of server session.
  315.       'SS' - Start of server session.
  316.       'Z'  - Message entered. Message size shown.
  317.  
  318.       'C'  - Message entered. Obsolete log entry format.
  319.       'M'  - Message entered. Obsolete log entry format.
  320.       'S'  - Message entered. Obsolete log entry format.
  321.  
  322.    'H' - Houskeeping event.
  323.  
  324.       'S'  - Start of Housekeeping event (obsolete).
  325.       'B'  - Clean up BID.MB.
  326.       'G'  - Auto-GM.
  327.       'O'  - Mark old messaged, kill old bulletins.
  328.       'U'  - Create WP Update message.
  329.       'E'  - End of Housekeeping event.
  330.  
  331.    'R' - RoundTable event. Generated by RT.EXE into RT.LOG.
  332.  
  333.       'E'  - End of RoundTable execution.
  334.       'J'  - Station joined the RoundTable.
  335.       'L'  - Station left the RoundTable.
  336.       'S'  - Start of RoundTable execution.
  337.  
  338. -------------------------------------------------------------------------
  339.  
  340. The following provided by AD8I :
  341.  
  342. Contrary to MOST explanations, dropped characters are not due to DESQview
  343. or other multi-taskers.  The problem happens for two reasons.  First, overrun
  344. of the serial ports (eg. the TNC is sending data to the computer faster than
  345. the computer can handle it).  Second, due to shutting off the interrupts.
  346.  
  347. All serial ports drivers commonly used by W0RLI and WA7MBL PBBS programs are
  348. interrupt driven.  When the UART (normally an 8250 [XT] or 16450 [AT])
  349. receives a character on the serial port, the following happens:
  350.  
  351.     1) the serial port issues a HARDWARE interrupt by raising one
  352.        of the IRQ lines on the bus.
  353.  
  354.     2) the 8259 programmable interrupt controller sees the change
  355.        in the IRQ and tells the CPU to stop whatever it is doing
  356.        and branch to the code for handling the interrupt (MBBIOS).
  357.  
  358.     3) our interrupt handler (eg. MBBIOS) takes the character from
  359.        the UART and moves it to a buffer area in memory reserved
  360.        (by MBBIOS) for storing input until it can be processed.
  361.  
  362.     4) when the character has been moved to memory, the interrupt
  363.        handler returns control to whatever was happening before
  364.        the interrupt
  365.  
  366. When there are high speed ports on a ("slow") CPU, eg. mulitple 9600
  367. baud TNC links to a 4.77 MHz V20 CPU,  it is possible, even likely,
  368. that another characer will be received before the first has been
  369. handled.  When this happens, characters are dropped.
  370.  
  371. Some disk caches (eg. VDISK) use EXTENDED memory in an AT (80286).
  372. Due to the design of the 80286, these caches must disable interrupts
  373. when moving data to or from the cache.
  374.  
  375. Most single character errors are of the first type while most multi-
  376. character errors are of the second type.  NO amount of "tweaking"
  377. the DESQview time slices will solve either problem since the serial
  378. port drivers load before DESQview.  The port interrupts whatever
  379. DESQview is doing to allow the serial drivers to do their thing.
  380. In a VERY busy system DESQview (and the various MB tasks) will actually
  381. come to a halt if there is too much I/O activity (both serial and
  382. disk I/O).
  383.  
  384. There two approaches to solve the port overrun problem:
  385.  
  386.     1) Use UARTS with INTERNAL buffers.  For example, the 16550 is a
  387.        direct replacement for the 8250 and 16450 with an internal 16
  388.        byte (character) buffer that can be used by software designed
  389.        for the purpose.  The 8530 HDLC chip used in the DRSI PC*PA
  390.        includes a 4 byte buffer.
  391.  
  392.        MBBIOS, FBIOS and G8BPQ's ASYNC support (NET/ROM and KISS
  393.        protocols) protocols could be easily modified to detect,
  394.        enable, and use the buffer in the 16550 if the software
  395.        writers chose to do so.
  396.  
  397.     2) Use TNCs operated in HOST mode.    In host mode, the computer
  398.        polls each TNC for data at its own pace.  The computer can
  399.        make use of the buffers IN THE TNC to hold data until the
  400.        computer is ready to handle it.    When the computer is ready,
  401.        it can empty the buffer on one TNC at a time.  (The AA4RE
  402.        BB software uses this technique.)
  403.  
  404. The only way to solve problems caused by shutting off the interrupts
  405. is to eliminate the EXTENDED memory disk cache.
  406.  
  407.