Mark G. Forbes: > ... 'null' character ... gave the printhead carriage enough time to > return to the left hand side of the platen before the next character > arrived. That's why CR and LF are separate characters Errr, not exactly. As per the following sentence following the above, CR and LF are entirely different functions, THAT«s why they are separate. Even in "the old days", use was made of this on the one hand to issue successive LFs without CRs for vertical "white space" and on the other to create overprint characters. ASCII art on a VDU is a stripped-down version of what you can do on a teletype (and stored on *paper* tape). Also, who«s used APL on a teletype? > If you didn't add the null, the next character would print while the > carriage was still moving to the beginning of the line. The "nul" on the Baudot machine was the "LTRS" (letters) shift character. Some machines were however rigged to LTRS-on-CR (or was it LF?). Typists were therefore trained to CR, LF, LTRS and in THAT order. Contrast this with VDUs where the CR is instantaneous but the LF slow (as it requires shifting a whole screenful of characters and clearing the bottom line). These require(d) the sequence LF, CR, NUL(s), or at least one more NUL if the CR came first. While the LF was processed, the CR would be held in the UART and successive NULs quite possibly lost! For this reason, the old O/Ss provided (and UNIX still does) functions to set the number of NULs sent after newline(, or CR,) and in what order. Harold Hallikainen: > The model 15 did it all mechanically. Quite amazing! Some of the most beautifully engineered and thoroughly reliable and durable machines ever made. Albeit with a MAJOR storage problem, I have a small collection of readers, reperfs and the later model Siemens 100 and 200 (Baudot) machines, a DECwriter etc. Can«t bear to part with such glorious machines. Now, the *not quite* 1.5 stop bits matter: The half-bit tends to "dither" the timing so that if the receiver accidentally synchronises to the wrong part of the character stream, it will be tend to right itself in fewer characters. Well, that«s as I understand it! Holding magnets: The Siemens is rather clever: It uses one magnet, but six armatures "offered" in turn to the pole piece, one per bit (the sixth relates to the start bit). Also, the early Creed machines used bi-polar (polarised) drive magnets for faster response. Relevance to PICs? Well, I shall look up my old interrupt-driven state-machine UART code (from the Mi-Co-Co) with a view to publication. Cheers, Paul B.