[Simh] Pasting into the console

Johnny Billquist bqt at softjar.se
Fri Apr 3 09:33:55 EDT 2015


On 2015-04-02 09:15, Rhialto wrote:
> On Fri 27 Mar 2015 at 04:42:53 -0700, Mark Pizzolato - Info Comm wrote:
>> Once I made this change, the user's pasting problem went away.  I just
>> added the same logic to the PDP11 TTI's device.
>>
>> However, it seems that since you logged data delivered through
>> tti_rd() and all data was logged, the data loss you were seeing wasn't
>> here, AND increasing the TTI WAIT time helping suggests that the data
>> loss is happening in the OS's TTY driver input buffer.
>
> Indeed, that seems the only possible explanation.
> I'm not sure though why the OS is so keen on reading all bytes from the
> hardware, even when its own internal input buffer is already full.
> But it seems to be that way.

There are several reasons.
1) The controllers usually have a single buffer for all channels, while 
the OS have one input buffer per channel. So it reads from the 
controller and then pass it on to the right input buffer. There is no 
way to just skip one channel.
2) Even if the input buffer is full, there are times when some 
characters will be meaningful. For exmaple ^C is usually a way to abort 
a program and flush input. That is expected to always work, even if the 
input buffer is full.
3) Flow control should always work, and DEC always used XON/XOFF.

>> I have no idea how to influence the size of the type ahead buffer used
>> by RSX or any other operating system. :-(
>
> Kermit sets it larger, up to 200. But even that doesn't seem to work for
> all cases (see below).

In RSX-11M, the input buffer size is fixed at 13 bytes, no matter what 
you think you are doing on the application side.
In RSX-11M+, the input buffer is settable to up to 255 bytes.
This is input buffering inside the OS, before the characters are 
delivered to the user program buffer, which gives you another limit.

RSX always first buffer characters internally, since it do not actually 
echo them until they are actually read by the program. (Unlike Unix for 
example.)

	Johnny

-- 
Johnny Billquist                  || "I'm on a bus
                                   ||  on a psychedelic trip
email: bqt at softjar.se             ||  Reading murder books
pdp is alive!                     ||  tryin' to stay hip" - B. Idol


More information about the Simh mailing list