



Ŀ
      
  Ŀ Ŀ Ŀ    ¿
        Ĵ           Ĵ
                     o o o
Ŀ
 
        Ŀ Ŀ Ŀ    Ŀ   Ŀ Ŀ Ŀ  Ŀ Ŀ 
                            Ĵ            
                        
Ŀ
     
          Ŀ Ŀ    Ŀ  Ŀ    Ŀ    
                 Ĵ               ڿ Ĵ
                    











Of Bits and Parity... --------------------- In parts 1 and 2, we took a closer
look at the most common and often least understood terms and standards in the
world of the modems we use. There are, however, several other telecommunica-
tions terms that can be confusing. Though they don't necessarily relate to
modem-buying decisions specifically, understanding these terms can add impor-
tant additional power to your communications dealings. They also will help you
understand how to set up the terminal programs your users will have to config-
ure to call your TBBS system. Among the most commonly faced (and least under-
stood) are the concepts of Data Bits, Parity, and Stop Bits.

Data Bits --------- The American Standard Code for Information Interchange -
ASCII - is a standard that defines 128 different characters that can be used
for data transmission. These include control characters, letters of the
alphabet (in both upper and lower case), numbers, and a full set of punctuation
characters. Because there are only 128 ASCII characters, only 7 binary digits
(bits) are required to form each of the 128 possibilities.





Many computer makers have extended the ASCII character set by adding 128 more
characters. This was accomplished by simply adding one more binary digit,
resulting in a total of 256 transmittable data characters. Each manufacturer,
however, created their own set of 128 additional characters. All extended
character sets are NOT the same.

In the case of the IBM PC and compatibles, the extended characters include
international alphabet, graphics and mathematics characters. These are commonly
known as IBM Graphics characters.

In communications, common settings are either for 7-bit or 8-bit data. General-
ly, both ends of the connection must be set the same way. If one end is set to
7-bit data and the other end is set to 8-bit data, reliable communication
cannot usually be established. This is because one end interprets the 8th data
bit as a parity bit (explained in a moment), and the other end tries to
interpret it as a part of the current character. On a connection like this,
some characters will display properly, while others will appear as "garbage,"
depending on which direction the data is traveling.





If the communications link is set to transmit only 7-bit data, the sendable
characters are limited to the 128 defined ASCII characters. The extended
character set, such as the PC's single- and double-line boxes and foreign
characters, CANNOT be sent unless the link is first set to allow the transmis-
sion of 8-bit data.

Some systems have even 5-bit and 6-bit data, and use character sets such as
Baudot and Selectric, but these systems are uncommon today.

Parity Bit ---------- When you establish communications with another computer,
parity is set to "even," "odd," "mark," "space" or "none." These are terms for
the manner in which the parity bit is interpreted by the receiver.

Parity is a primitive form of error-checking. The state of the parity bit, when
set to be even or odd, is based on a simple mathematical formula. Depending on
the data bits, the parity bit will either be on or off. Normally, the limited
error checking capabilities are not utilized. This explains why the setting of
parity to "none" is so common in communications today. This allows the parity
bit to be used as a normal data bit instead.





Start and Stop Bits ------------------- Start and stop bits allow each charac-
ter sent to be set in a "frame." The beginning of the character, the first part
sent, is the start bit, and the end of the character, the last part sent, is
the stop bit. Each character sent is thus framed with a distinct beginning and
ending bit and this allows the receiving system to know when each complete
character has been sent.

There is always just one start bit. However, there may be one, one and a half
or two stop bits.

Stop bit length used to be critical when serial communication was primarily
handled with electromechanical equipment, such as an old-fashioned Teletype
machine. The print head in this type of equipment took a fixed amount of time
to return to its "home" position, and this was accomplished during the sending
of the stop bits. A longer stop bit length gave the print head more time to
return to its home position.

In modern all-electronic serial communication, the stop bit is still necessary,
but only to mark the end of a character. A delay isn't necessary as there isn't
usually anything mechanical involved.




Asynchronous Communications --------------------------- Framing the character
with start and stop bits forms the basis for "asynchronous" communications. In
asynchronous transmission, characters do not have to flow constantly - there
can be "gaps," or spaces, between each character. The receiver knows when a
character is sent by the framed nature of asynchronous transmission - the start
and stop points can easily be determined.

Synchronous Communications -------------------------- An alternate serial
transmission method exists known as synchronous communications. It occurs when
there are no start or stop bits, and is possible only if data characters flow
constantly at a fixed bit rate with no interruptions. When there is no data to
send, idle or padding characters are sent at the fixed rate (to keep data bits
flowing constantly), but they are discarded by the receiver.

Because there are no start or stop bits, it is possible to remove 2 of every 10
bits used in Asynchronous communications. This results in a 20% faster data
speed with the same serial bit rate.  However, because of the requirement for
constant data flow, Synchronous transmission requires additional protocol and
is primarily used in mainframe computer or specialized applications.







One place it is used with TBBS is hidden inside of high speed modems. When
these modems use MNP or V.42 protocols, they have the needed protocol to use
synchronous communications between the modems themselves. However, you still
use asynchronous communications between the computer and the modem so this
instance of hidden synchronous communications is primarily of interest as
trivia.

Duplex ------ "Duplex" is a term which refers to whether a data communications
path is one- way or two-way. "Full duplex" means that data can flow in both
directions at the same time. "Half duplex" means that data can flow in only one
direction at one time. Most modems are full duplex, but communications software
can most often still be set to take advantage of half duplex connections.

Some less expensive high speed (9600+ bps) modems are pseudo- full-duplex. This
means they cannot transmit data at high speed in both directions at the same
time because they are really operating in a fast turn-around half duplex mode
internally.




Flow Control ------------ The term "flow control" refers to a method of
controlling the flow of transmitted data, so it doesn't "overrun" the data
receiver's ability to receive the incoming signals. Flow control allows the
receiver to signal the transmitter to pause, while recently received data is
properly assimilated, then signal it to restart the data flow when it's ready
to receive more.

There are generally two forms of flow control - software and hardware.

RTS/CTS ------- Hardware flow control is not always required. It is generally
needed only with modems that are capable of "buffering" out-going data, or with
high speed modems. Hardware flow control, called RTS/CTS flow control, uses two
of the RS-232 (serial) pins to start and stop the data flow. Its advantage is
that it is data independent and thus can be used for reliable flow control with
any type of data stream.

X-ON/X-OFF ---------- Software flow control, called XON/XOFF flow control,
starts and stops the data flow based on the reception of certain control
characters. Although this type of flow control can be used by hardware devices,
software flow control is usually used with TBBS, to allow the TBBS user to
start and stop data transmission by using control keys. This allows the user to
press Ctrl-S at any time to temporarily halt data flow, and then press Ctrl-Q
at any time to restart data flow. 




Even when hardware flow control is in use, TBBS will honor software flow
control codes to start and stop the flow of text data displays.

What is ANSI? ------------- "ANSI" is a common term in the bulletin board
community today, but it's also a term that's usually misused.

ANSI stands for the American National Standards Institute, a standards develop-
ment organization (sort of like the CCITT, which I discussed in my last
column). ANSI develops and documents standards for thousands of different
areas, from architectural specifications for the handicapped to computer
programming languages.

Within the bulletin board community, the term "ANSI" generally refers to an
ANSI standard called X3.64 as implemented by IBM in ANSI.SYS. The ANSI X3.64
standard specifies a series of codes that a host system can send to a remote
data terminal to control color attributes, cursor positioning, inverse video
and screen clearing on the terminal display. 





"ANSI Graphics" is a term that is often used in the bulletin board community,
but this actually refers to two separate elements. "ANSI" controls color and
cursor positioning, while "Graphics" usually refers to characters in the IBM PC
extended character set, such single- and double-line boxes, shading characters,
and so on. "ANSI Graphics" is a common term, since normally only an IBM PC is
capable of handling both ANSI and Graphics. In reality, many data terminals and
software packages for various computers are capable of handling ANSI codes,
although they may not always handle the IBM extended characters.

Actually, "ANSI Graphics" does NOT refer to a standard for displaying pictures
or graphic images on the remote terminal.

The VT-100 terminal (a data terminal from Digital Electronics Corporation) and
software that emulates a VT-100 terminal can also be used with ANSI escape
codes, since the codes for both ANSI and VT-100 are very similar.

ANSI works by sending a series of characters to the remote terminal. The codes
all begin with an escape character and a left bracket, and are followed by a
variable quantity of numbers and letters. The terminal understands the meaning
of these codes, and acts accordingly by setting screen colors or moving the
cursor.







Graphics -------- Graphics, as I mentioned previously, are the characters in
the IBM PC extended character set. They are characters beyond the original 127
possible ASCII characters as defined by IBM in all of their display adapters.
These include single- and double-line boxes, shading characters, international
characters and mathematical symbols.

IBM Graphics characters have become enough of a de-facto standard, that many
other computers now emulate them. Many terminal programs on the Apple Macintosh
computer will allow proper display of the IBM graphics character set, as will
many of the true display terminals on the market today.















                                   Summary 

That pretty well covers most of the common modem and telecommunications 
program terms and standards in use today. I hope this series of articles has 
made you better able to understand the seemingly endless number of buzz words 
you find in microcomputer communications. You should now be able to 
understand better why terminal programs must be configured to operate correct
ly. You also should be able (with information from the first two parts of 
this series) to better choose the type of modem you need to meet your 
applications. I hope you'll let us know if you have any questions or need 
further help understanding anything that I've already discussed. It's been 
fun... 

Press the ENTER key to continue...                                   <TOC>
