Electronic Systems TRS-80 Serial I/O Board?
paulkoning at comcast.net
Tue Jun 13 19:52:58 CDT 2017
> On Jun 13, 2017, at 8:29 PM, Eric Smith via cctalk <cctalk at classiccmp.org> wrote:
> * I refer to a "normal UART" as one that oversamples the receive data
> signal (typically at 16x the bit rate) to find the leading edge of the
> start bit, delays 1/2 bit time, then samples the start bit and subsequent
> data bits at one bit time intervals. That is how nearly all UART chips
> work, since the very first ones.
From what I remember from the DEC documentation, the PDP-11 era UARTs took 7 samples, which may mean they were 8x oversampled.
> This analysis is disregarding various
> "auto-baud" techniques, which are not performed by normal UARTs, and
> certainly not by the TR1602 or AY-3-1013.
The auto-baud I know was done in software: set the UART to some convenient speed, expect the user to enter a particular character (carriage return was typical) and look for whatever a carriage return sent at speed x would produce as received data in a UART set to speed y. In RSTS, we lifted an algorithm from some other OS (forgot which), which would work from 300 to 9600 baud (maybe even 110, I forgot), in two ranges. So the UART would be set to the right test rate for range 1, check the received input, if it says "wrong range", switch to the rate for range 2 and await that character.
More information about the cctech