kkim@uiucdcsb.cs.uiuc.edu (10/07/87)
as i understand, most 1200-bps modems send data in the unit of seven data bits preceded and followed by some start and stop bits. there is usually one parity bit which may or may not be used. it seems that one 7-bit ascii character is sent as one unit. however, binary files which uses all 8 bits are usually transformed before being sent - that is, 3 8-bit bytes are transformed to 4 6-bit units, slightly modified (adding some number to make it non-control character), and then sent as 4 units, not 3. i wonder if there are any special 1200- or 2400-bps modems that can send 8-bit byte as *one unit* without transforming 8-bit information. OR is it possible to set/reset some flags on the standard 1200-bps modems to accomplish the object ? thanks. in advance. kyongsok kim dept. of computer science; univ. of illinois at urbana-champaign arpanet/csnet: kkim@b.cs.uiuc.edu usenet/uucp : ... {seismo, pur-ee, ihnp4}!uiucdcs!kkim
larson@sri-unix.ARPA (Alan Larson) (10/13/87)
In article <167100015@uiucdcsb> kkim@uiucdcsb.cs.uiuc.edu writes: > as i understand, most 1200-bps modems send data in the unit of >seven data bits preceded and followed by some start and stop bits. >there is usually one parity bit which may or may not be used. You understand incorrectly. > i wonder if there are any special 1200- or 2400-bps modems that can >send 8-bit byte as *one unit* without transforming 8-bit information. I have never met one that couldn't. No flags were needed. Try the UDS 212LP, or the CDS 224 (2400/1200). Both send all 8 bits just fine. Neither has an option to do differently. Alan
reh@ccd700.UUCP (reh) (10/13/87)
In article <167100015@uiucdcsb>, kkim@uiucdcsb.UUCP writes: > as i understand, most 1200-bps modems send data in the unit of > seven data bits preceded and followed by some start and stop bits. > there is usually one parity bit which may or may not be used. > it seems that one 7-bit ascii character is sent as one unit. > however, binary files which uses all 8 bits are usually transformed > before being sent - that is, 3 8-bit bytes are transformed to 4 6-bit > units, slightly modified (adding some number to make it non-control > character), and then sent as 4 units, not 3. > kyongsok kim > arpanet/csnet: kkim@b.cs.uiuc.edu > usenet/uucp : ... {seismo, pur-ee, ihnp4}!uiucdcs!kkim Modems ussually send a start bit, 8 bits, stop bit, where the 8 bits are whatever your computer sends to the modem. Your computer can be set to send 7 data bits and a parity bit, or 8 data bits and no parity bit. (other combinations are possible but not as common) No modem I know of is smart enough to try to take apart 3 8-bit bytes and pack them into 4 7-bit characters, you would need a program on your computer to do that (like uuencode). The TYMNET network does convert 8-bit characters to 7 bit characters and sends the 8th bits as an extra character after each 7 in it's internal network, but that is transparent to the user and does not reach the user's modem. (user runs normal 8 bits) That is the only network that I know that does that kind of conversion. ...................................................................... Bob Harold 313-845-5404 Ford Motor Co., DPTC room B-206 ...!ihnp4!mibte!ccd700!eed090!bob 17000 Rotunda Drive Disclaimer: The views expressed might Dearborn, MI 48121-6010 not be those of my employer or myself Have questions about life? Read the original design manual - the Bible. ......................................................................
plocher@uwspan.UUCP (John Plocher) (10/13/87)
+---- In <8215@sri-unix.ARPA> Alan Larson writes: | +---- In <167100015@uiucdcsb> kkim@uiucdcsb.cs.uiuc.edu writes: | | as i understand, most 1200-bps modems send data in the unit of | |seven data bits preceded and followed by some start and stop bits. | |there is usually one parity bit which may or may not be used. | +---- |You understand incorrectly. +---- Talk about a helpful followup :-( ALL modems send whatever bit pattern is sent to them by the computer. If the computer sends 6 bit data to the modem, the modem will send 6 bit data. similarly, if the computer sends 8 bits, the modem does too. (With pictures: The usual way a computer talks to a modem is through a RS-232C serial port; The bit stream looks like this: ... <start bit> <data bits> <parity bit> <stop bits> ... Number: ... < 1 > < 6,7,or 8> < 0 or 1 > <1,1.5,or2> ... Value: ... [ 1 ] [variable ] [0,1, none ] [ 1's ] Usually the total number of bits is 10, so you get: Start 1 1 1 1 Data 7 8 7 6 Stop 1 1 2 1.5 Parity 1 none none 1 ---------- --- --- ---- 10 10 10 9.5 (almost 10 :-) 71E = 1 0101010 1 1 (1 start, 7 data, even parity,& 1 stop) 81N = 1 10101010 1 (1 start, 8 data, no parity, & 1 stop) 72N = 1 0101010 11 (1 start, 7 data, no parity, & 2 stop) end of pictures) The reason you see a 7 bit data path when using modems (which DO support an 8 bit data path) is that the interface between the computer and the modem is set to use a 7 bit data path. In addition to that, some programs which manipulate data assume that only 7 bits of the 8 are valid. Programs like /bin/mail (and others) don't really like it when they have 8 bit characters shoved at them :-) On the other hand, uucico, zm, kermit, umodem, and a host of other file transfer methods are perfectly happy with all 8 bits! If the serial port which is connected to the modem is set to 81N (8 data bits, 1 stop bit, and no parity) with a command like stty 1200 -parenb cs8 -cstopb < /dev/ttyd1 then the modem will be able to transmit 8 bit data. (Be sure that the computer at the other end of the line also is set up for 8 bit data, too! :-) If you are using a PC with Procomm or Qmodem or... there is a menu (with a name like "dial" or "configuration"...) which lets you set these things for each system you call. Note that you MUST have an 8 bit data path if you are using XMODEM, YMODEM, ZMODEM, SEALINK, TELINK or other similar file transfer methods. Only Kermit (and Blast) will work with a 7 bit data path. Hope this helps... -John
jpdres10@usl-pc.UUCP (Green Eric Lee) (10/14/87)
Distribution: Keywords: Summary: Expires: Sender: Reply-To: Followup-To: In message <167100015@uiucdcsb>, kkim@uiucdcsb.cs.uiuc.edu says: > it seems that one 7-bit ascii character is sent as one unit. >however, binary files which uses all 8 bits are usually transformed >before being sent - that is, 3 8-bit bytes are transformed to 4 6-bit >units, slightly modified (adding some number to make it non-control >character), and then sent as 4 units, not 3. 1200 baud modems have no inherent problem with sending 8-bit data. Modems do not understand parity. They just send what they get, and leave the interpretation up to the reciever. I do 8-bit transfers all the time, with both Unix and various microcomputers. If what you describe is actually happening, it is probably a "feature" of your computer and/or software. For example, many terminal servers are incapable of handling 8-bit characters, and at many installations, the dial-up modems are connected to the same terminal servers as those in the terminal rooms. Flow control is an especial culprit in the inability to handle binary data. In an attempt to get around these problems, the Kermit file transfer protocol was created. It does quoting of control codes, and, optionally, quoting of 8th-bit-set characters. This quoting mechanism in no way resembles the one you mention (i.e. breaking 3 8-bit bytes into 4 6-bit bytes), and I am at a loss to figure out exactly what the heck is actually going on in your case. Maybe more details about your installation, software, etc. would be advisable. -- Eric Green elg@usl.CSNET from BEYOND nowhere: {ihnp4,cbosgd}!killer!elg, P.O. Box 92191, Lafayette, LA 70509 {ut-sally,killer}!usl!elg "there's someone in my head, but it's not me..."
krumvp@opus.uucp (Paul Krumviede) (10/15/87)
In article <713@ccd700.UUCP> reh@ccd700.UUCP (reh) writes: > The TYMNET network does convert 8-bit characters to 7 bit characters >and sends the 8th bits as an extra character after each 7 in it's internal >network, but that is transparent to the user and does not reach the user's >modem. (user runs normal 8 bits) That is the only network that I know >that does that kind of conversion. >...................................................................... >Bob Harold 313-845-5404 >Ford Motor Co., DPTC room B-206 ...!ihnp4!mibte!ccd700!eed090!bob Tymnet does not do this internally. The only transformation is to "escape" binary data with values of 00x-07x by preceeding such data with a hex 00. I'm not sure where this confusion could have originated; I don't think any host protocols do anything like this either. Paul Krumviede, Tymnet Technical Support
henry@utzoo.UUCP (Henry Spencer) (10/20/87)
> ALL modems send whatever bit pattern is sent to them by the computer. If > the computer sends 6 bit data to the modem, the modem will send 6 bit data. > similarly, if the computer sends 8 bits, the modem does too. Um, not entirely true. 300-baud modems did just faithfully send every bit the user threw into them. They just altered the state of the signal they sent out on the wire every time the signal coming in changed. This is NOT TRUE for 1200-baud modems, and still less so for faster ones. The modem receives the data, pulls it apart and puts it back together in a form more suited to transmission. For example, "1200 baud" modems really send 600 two-bit lumps per second, and the actual transmission is done synchronously rather than asynchronously, with the modems hiding all this from the users. (This is why autodialing is normal in modems now -- the fast modems have to be smart anyway, and adding autodialing costs little.) So the modems do have to understand the data coming in, and hence there are limits on its format. Fairly broad ones, fortunately, for most modems. If you want a gross case of this, consider that the Telebit Trailblazer knows what uucp packets look like, and the actual data on the wire of a Trailblazer uucp connection only vaguely resembles what the hosts see -- the modems are using a totally different packet scheme between themselves! -- PS/2: Yesterday's hardware today. | Henry Spencer @ U of Toronto Zoology OS/2: Yesterday's software tomorrow. | {allegra,ihnp4,decvax,utai}!utzoo!henry