Modem Discussions
Most likely, the majority of your logins will be via modem connection.
Therefore, it is to your advantage to have a general knowledge of how serial
ports work. This section is dedicated to lightly cover some of the more
advanced serial port topics to help answer many common questions.
Serial Port Hardware
PCBoard supports a wide variety of serial port software. Not only does it work with standard RS-232 serial port hardware but also with many intelligent and non-intelligent serial boards. Of course, to use the intelligent or non-intelligent serial boards, you will need to be using the /M version of PCBoard so it can properly access the serial port hardware.
Standard RS-232
This type of serial board is the one that is installed in most computers when you originally buy them. Until the advent of the /M version of PCBoard, these were the only type of serial ports you could use with PCBoard.
Non-intelligent Serial Board
This type of serial board is quite similar to the standard boards except all of the serial ports share the same IRQ. With standard serial ports each has to have a unique IRQ. To use these serial ports with PCBoard you need to use the /M version.
Intelligent Serial Board
Perhaps the most proficient and consequently most expensive serial port hardware that you can buy is an intelligent serial board. These boards usually have at least 4 ports on a single card, but could easily have 16 ports as well. To help off-load some of the CPU processing, the board includes its own processor. The Arnet SmartPort Plus and the DigiBoard COM/xI boards are examples of intelligent serial boards that are supported by the /M version of PCBoard.
The Importance Of Flow Control
Serial communications is a two-way street. You send data and you also receive data. Therefore, it becomes important to have some sort of control in regards to the flow of data. This is where flow control comes into play.
What Is Flow Control?
Flow Control simply controls the sending or receiving of data. If one end of the connection can no longer send or receive data, the proper signal should be sent to signify that no more data should be received or sent. There are two types of flow control – software and hardware.
Software Versus Hardware Flow Control
Software flow control is commonly referred to as XON/XOFF flow control. With software flow control, control characters are sent to signify that data transfer should stop. For example, sending a CTRL-S will stop the flow of data and CTRL-Q will restart the flow. The problem with software flow control is that it is very easy for these characters to accidentally be transmitted due to line noise or to be embedded inside of a perfectly valid binary file.
Hardware flow control, on the other hand, is handled by the RS-232 (serial
port) specification. The cable between your modem and your serial port has
several wires inside of it. Two of these wires are labeled CTS and RTS.
These wires can either be “up” or “down” (referring to their electrical
state). The state of these wires, determines how the flow of data is
controlled.
Why Hardware Flow Control Should Be Used
Both your hardware and your software should be configured to use hardware flow control. In fact, hardware flow control is a necessity when you lock in your port rate or transfer using Ymodem/G. If you are not using flow control or it is not working properly, it is quite possible for you to experience data loss.
UARTs
What is a UART
The UART (Universal Asynchronous Receiver Transmitter) is a chip on most serial boards and is used to input and output data from the serial device.
NOTE: Intelligent serial boards do not have UART chips. Instead, the multiport driver will communicate directly with the CPU on the serial board.
Types of UARTs
There are three basic types of UART chips with each chip being identified by a unique number. One of the first UARTs was the 8250 UART. It was replaced with the 8250A which fixed some bugs with the original 8250 UART. Both the 8250 and 8250A are capable of handling one byte at a time.
Around the time when the original PC AT was introduced, the 16450 UART was also introduced. This chip was better designed for the faster architecture of the AT. Each type is determined by their part number. Although it handled the speed of the AT fine, the 16450 still handled data one byte at a time.
In the late 1980's, the 16550 UART was introduced. This chip, while compatible with the 16450, also included the ability to handle more than one byte at a time via its 16 byte buffer. This buffer helps prevent data loss because more than one byte can be handled at a time. Some bugs were discovered in the original design and subsequent versions of the chip were released. If you have a 16550 UART, make sure that it is either the 16550A or 16550AFN model to ensure proper operation.
Determining What UART(s) You Have
Most good system diagnostic utilities will have some way or reporting the
type of UART you have for each port. If you do not have any diagnostic
utilities, PCBoard will report the UART that it finds in your system via the
status line. You need to first load PCBoard, then select Sysop - Not Busy.
At this point, you can press ALT-H four times and you will see your status
line change to something like the following sample:
Towards the bottom right-hand side of the status line you see the UART model (next to the ErrCorr field. You will then know what model UART PCBoard has been able to determine that you have. Typically you will see either 8250A/16450 or 16550A.
Locking Opening Baud Rate
High-speed modems (9600 bps or higher) are very popular on bulletin board services. Additionally, most of the modems being sold now have built in error-correction and data-compression. To get the highest transfer rate out of your connections, you must lock your port speed. While your modem may be only able to connect at 14400 bps, you can lock your port rate at 19200, 38400, or even 57600 bps. As a matter of fact, PCBoard will automatically lock the port for you at any speed above 9600 bps.
Advantages
By locking your port rate, you can give data to the modem faster rather than having the modem wait on the computer to send more data. This usually translates to higher transfer rates and is most noticeable when you are sending uncompressed data over the modem (such as a text file).
In reality, PCBModem should configure your modem to operate properly under PCBoard. Therefore, you really do not need to worry about setting up either PCBoard or your modem to work with a locked port rate, as PCBModem will do that for you if your modem supports it.
Troubleshooting
The most common problem with locked port rates is that you have only configured either the modem or the software (but not both) to use a locked port rate. What happens in this case is that users will get a line of characters on their screen which looks like garbage. In fact, the user will not be able to type anything either. If you see this type of problem, double check and make sure both your modem and your software are configured to use locked port rates.
Line Noise
Line noise will always be around as long as modems are in use. Modems convert computer data into audio signals. Anytime there is interference with the audio signals it will generate line noise because the signals have been modified by interference.
Non-Error Correcting Modems
If your modem is not an error-correcting modem, line-noise will be displayed on your screen. This happens because your modem does not know the interference is line noise. Quite simply, the modem is translating the audio signals that it received back into computer data. If something interferes with these signals, you will see the interference as line noise when the modem translates the audio signals back into data.
Error Correcting Modems
Error correcting modems packet the information they send out so when the receiving modems receive the packets, they can check to insure the data is the same as it was sent out. If the data is not the same, the packet will be resent until it is properly transmitted. Of course, this means there will be a delay on the receiving end until the packet is received properly. The length of this delay could be un-noticeable or it could be quite noticable depending on how many times the packet must be resent.
Nearly always when you see jerky screens, pauses, or your file transfer rates are noticeable slower it can be attributed to line noise. About the only thing that you could do in this case is to hang up and call back hoping to get a clearer line.