Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!security!genrad!grkermit!masscomp!clyde!floyd!harpo!ihnp4!inuxc!pur-ee!uiucdcs!uiuccsb!stepp From: stepp@uiuccsb.UUCP Newsgroups: net.micro Subject: Re: 1200 baud modem problems - (nf) Message-ID: <4957@uiucdcs.UUCP> Date: Wed, 18-Jan-84 22:31:53 EST Article-I.D.: uiucdcs.4957 Posted: Wed Jan 18 22:31:53 1984 Date-Received: Sat, 21-Jan-84 06:54:56 EST Lines: 64 #R:sri-arpa:-1540200:uiuccsb:4400035:000:3621 uiuccsb!stepp Jan 18 09:26:00 1984 First, what is a 'break character'? The 'break character' is a character only in the sense that there is usually a key on the keyboard for that function. Like a regular character, break is a sequence of changes on the communication link of finite duration. Unlike a character, the break pattern on the link has no parity and is of an incorrect (too many) number of bits. Each regular character is sent as a pattern of (10 or 11) bits, each character composed of exactly the same number and with leading and trailling bits called 'start' and 'stop', respectively. The serial line idles in the 'mark' state (1 state, dating from the time when telegraphs were connected together in a series loop circuit, data was sent by interrupting the current briefly) with start and stop bits always being in the 'space' state (0 state). Note, on RS232 lines 'mark' is a negative voltage, 'space' is a positive voltage. One or more mark bits separate characters. A break is just that, an opening of the connection (a la telegraphs) for a long time. On modern serial data links, the break is a sequence of space bits much longer that any possible sequence that could be data surrounded by start and stop bits with mark bits between characters. UARTS can detect break because they get a 'framing error', that is when they expect to see a stop bit (ending a character) followed by one or more marks between characters, they see instead lots of spaces (the break). On modems that encode one bit as one baud, everything is simple. Regular characters go in at the transmitting modem and come out from the receiving modem bit-by-bit with no interpretation of the bits by either modem. Break goes in as lots of space bits and comes out the same way. The speed of the bits going in equals the speed of the bits coming out, the modem does not have to know what that speed is as long as its not too fast (e.g., less than 300 bps, though 600bps is possible). The 212A style of modem is much different! The 212A (1200bps full duplex) is not a baud-for-bit modem. The modem takes in 2 bits and outputs (on the phone line) one baud. It can send four different 'bauds' encoded by phase (PSK). To decode PSK the receiving modem must be in constant synchronization with the transmitting one. The asynchronous data is actually sent synchronously between modems. It comes out looking like asyncoronous data, but thats just to fool you. Now consider the break signal. All is not so simple at all. Break is handled specially on such modems and it is possible for a modem to get lost handling the break, basically because the modem may lose track of correct timing if it is not careful. (Note: on the 212A the data must be presented to the modem at exactly 1200 bps (+- 1%) for the conversion from asyn. to syn. transmission to work; the modem fills in garbage data during the varying time periods between characters which the receiving modem swallows, but the timing WITHIN A CHARACTER must be exact). Thus to send break over a 1200 bps line the modems at each end must be capable of understanding that a sequence of spaces coming in, then being synchronously transmitted is a break and the receiving modem must then temporally violate its idea of well-formed-character and hold the outgoing serial line at the space state 'too long', all without losing synchronization with the modem at the other end or failing to properly recover the next real character. Good 212A modems should do this trick with ease. I suppose it would be possible to have a modem that thinks break is something to swallow. I would tend to avoid such a modem.