Possibilities - Realities 6/91

Contact:   eSoft, Inc. (Makers of TBBS)
           15200 E. Girard Ave., Suite 3000
           Aurora, CO  80014
           (303) 699-6565      Voice
           (303) 699-6872      Fax
           (303) 699-8222      BBS
           support@esoft.com   E-Mail

REALITIES 6/91
--------------

*** From June 1991 Possibilities Newsletter ***
*** Copyright 1991 by eSoft, Inc.  All Rights Reserved ***

REALITIES...how to make it work
by eSoft Technical Support Staff

From the moment you first install TBBS, it's easy to see the possibilities are 
almost endless.  Turning those possibilities into realities can bring up 
questions.  For this reason, quality customer support is at least half the 
overall value of any software package. 

We recommend you call the eSoft Support BBS (303-699-8222) and read through 
the messages in each of the various support areas.  You could find answers to 
your questions, even before you've asked them!  You'll definitely get some 
useful tips and ideas for bringing possibilities to life with tbbs.  In this 
section of the newsletter, we will answer some of the more commonly asked 
questions we receive. 

Setting the Format...

Q. I'm trying to use format files in the TDBS application I'm writing, and I'm 
following the example in the manual.  It doesn't appear to be working.  Am I 
doing something wrong, or is TDBS broken? 

A. Neither.  The manual is misleading in some of its examples of format file 
usage.  This information is corrected by a Tech Note we've issued for TDBS 
users.  Anyone serious about TDBS programming should download TECH1.TXT, which 
contains corrections and clarifications of issues presented in the manual, as 
well as other TDBS related matters.  This Tech Note is available for download 
from the eSoft Support Board.  From the Main Menu, select <T>ech Notes, then 
file area 2.  You'll see TECH1.TXT listed for download. 

NOTE: Information on calling the eSoft support BBS is available on the back 
page of this and every newsletter in the STATUS section.  It is also a good 
idea to check the status section each issue to see if any required Field MODS 
have been issued for your software.  These field MODS repair known bugs to 
your software and you should install any new ones to avoid problems.  The 
support BBS is also a great place to ask questions about your use of TBBS 
software. 

Is SCSI Scuzzy?

Q. I'm thinking of adding a new drive to my TBBS system.  I want large 
capacity.  Most of them I've seen use a SCSI interface, and this is something 
I know little about.  Can these drives work with TBBS? 

A. TBBS is device independent with regard to disk drives.  If the drive works 
with DOS, it should work with TBBS without difficulty. 

SCSI drives, however, are sometimes tricky to install.  Many of our customers 
have experienced varying levels of difficulty with their SCSI equipment.  This 
is not the fault of TBBS; in all cases the problems were traced to human 
error, memory or hardware conflicts, or failed hardware.  Memory conflicts 
have been the most common. 

SCSI drives are the most difficult of all hard disk types to install 
correctly, and are the most prone to conflicts with other drivers or software.  
SCSI drives usually require drivers to be loaded in your CONFIG.SYS file.  
Often special drivers are needed for different versions of DOS, or for 
situations in which a memory manager (like QEMM or 386Max) are used.  For 
example, some Adaptec SCSI controllers require the driver ASPI4DOS.SYS to be 
loaded in many (but not all) situations.  In other situations, the memory 
manager needs to be specially configured to adapt to the SCSI controller (e.g. 
the DISKBUF option on QEMM). 

TBBS will operate with any properly installed and configured SCSI drive.  
Because each SCSI controller and driver software combination is unique, eSoft 
Customer Support is unable to assist you with this type of hardware 
installation or debugging.  If you experience difficulty installing or using 
your new SCSI drive, you are urged to contact the manufacturer of the SCSI 
controller or your equipment vendor for assistance.  Be sure you mention that 
you are using an EMS manager and software (TBBS) which reads and writes disk 
sectors directly into EMS memory. 

Pegging the Meters...

Q. I have a multi-line TBBS in operation, running 6 lines.  I've noticed that 
when a single user is on the system performing certain types of tasks that the 
"Idle" meter on the Performance Monitor drops nearly all the way to zero, and 
the "Disk" and "CPU" meters are both shooting way over to the right, 
indicating that the system is overloaded.  This usually happens inside of a 
TDBS program.  What could possibly be going on?  If another user came online 
wouldn't they have terrible performance? 

A. Despite appearances, the system is not overloaded, and other users (if they 
were to sign on) would not have terrible performance.  When TBBS and/or TDBS 
is asked to do a job for the user, it takes all available system resources it 
needs so that the job can be completed in the shortest possible amount of 
time.  When more users come online, the available system resources (disk and 
CPU time) are divided among the users in proportion to the importance of their 
task.  This is all managed automatically by the TBBS internal multi-tasking 
kernel, or "scheduler" as we call it.  The scheduler ensures that all users 
have a fair and reasonable allocation of the system to get their job done.  
When only one user is online, that user will "get it all" and the Performance 
Monitor meters will look a bit shocking, but everything is fine. 

Our next release (TBBS 2.2) will have additional performance meters on the 
display which will show the actual user response delay times.  These meters 
will more accurately alert you to excessive system loading conditions should 
they occur. 

Networked Printers...

Q. I have my TBBS installation connected as a workstation on my Novell LAN.  
I'm writing a TDBS application, and I need to print on a network printer.  
I've properly configured Novell to redirect the TBBS machine's LPT1 port to 
the LAN.  Yet, when I try to run the TDBS program, all I get is a "Printer Not 
Ready" error.  What's up? 

A. TDBS is capable of using only locally connected printers, and cannot use 
LAN-based or "virtual" printers.  The reason is that TDBS uses its own 
internal parallel port handling routines, and not DOS calls to output to the 
printer.  We do this because DOS calls for printer output have long timeouts 
in an error condition, often over 30 seconds in duration.  If TDBS were to 
depend on DOS calls for printer output, in an error condition the entire 
TBBS/TDBS system could be "frozen" for 30 seconds or more, however long it 
takes DOS to return the error.  Obviously this is entirely unacceptable.  The 
only solution was to write our own routines, but the trade-off is that LAN-
based printer use is not possible. 

Sharing the Fun...

Q. I've created a TDBS program, and it's been working great on my 12-line TBBS 
system.  Now I find that only one user can access the program at a time.  I 
must have gotten the Single Line version of TDBS by mistake.  How can I get 
this situation corrected? 

A. If your TDBS disk says it's version 1.1M[16], then no mistake has occurred 
- you've simply left out a very important line of code in your program!  At 
the very beginning of the program code (before any USE commands) place a line 
that says this: 

SET EXCLUSIVE OFF

TDBS, like dBASE itself, defaults to "SET EXCLUSIVE ON" meaning that only one 
user at a time can be accessing any of the open databases.  If a user is 
running your application and another user comes in and runs it, an error will 
be generated for the second user indicating that the files are in use by 
another user.  When you include the command SET EXCLUSIVE OFF you inform TDBS 
that the databases can be shared, allowing multiple users to run the 
application at the same time. 

TDBS makes multi-user programming easier than it has ever been in the xBASE 
language, but you still should read the TDBS manual chapter 3 which details 
all of the programming considerations involved with multiuser programming in 
TDBS. 

Buffered UARTs...

Q. I want to add 16550 buffered UARTs to my DigiBoard to help the performance 
of my high speed modems, as described in TECH10.TXT (a TBBS Tech Note from 
your Support Board).  The note says I shouldn't use the Western Digital 16550 
chips, but they are about half the price of the National Semiconductor chips.  
Why can't I use the WD brand? 

A. National Semiconductor originally developed the 16550 UART chip, and 
provided recommendations on the methods software should use to control the 
FIFO buffers internal to the chip, the feature that allows better performance 
of high speed modems.  TBBS used the recommended method for enabling this 
buffer.  Due to an undocumented internal difference (bug?) that we have not 
been able to isolate, the Western Digital brand 16550 UART chips do not 
correctly respond to TBBS' FIFO buffer handling code.  As a result, TBBS 
communications failures will occur when the Western Digital part is used.  You 
must locate, obtain and install National Semiconductor NS16550AFN chips if you 
wish to have buffered UARTs installed. 

When you install the 16550 UARTS be sure you also remember to add the /F 
switch to your MLTBBS command line in your RUNBBS.BAT file.  If you don't tell 
TBBS to look for and use the 16550 UARTs you will not see any difference in 
opearation because TBBS will not invoke its special handling code. 

On a DigiBoard you may want to only install 16550 UARTS only on certain lines.  
This leads to the question of which UARTs control which lines.  The following 
diagram shows this relationship for an eight port Digiboard.  A four port 
board has the same location as the first four lines of an eight port board. 

- END -
PS0691-2
Rev. 6/91

Copyright (C) 1994 eSoft, Inc., All Rights Reserved.  Permission granted
to distribute this file in its entirety, without modification, to any
interested party.  Any other use requires the written permission of
eSoft, Inc.

IMPORTANT:  The information herein is subject to change without notice.
Please call or write to confirm factual information of importance to you
or your organization.

