The potential win with CTERM was that much processing could actually be 
done locally, instead of having to travel back and forth between the 
machines for every key stroke.
Essentially it's like RPC. Or, as Paul put it, basically the whole QIO 
interface mapped to a protocol. And it might be hard to understand what 
this actually means. The terminal driver in RSX and VMS are probably the 
most complicated driver there is. It can do almost anything with a 
single I/O request. Reading? Sure. With promps? Yes. And timeouts? 
Definitely. No echo? Yup. Terminating on arbitrary characters? 
Absolutely. With special processing for escape sequences? Yup. With 
prepopulated input? No problem. All in one QIO... And there is more...
There is a pretty large section in the manual set just dealing with the 
terminal driver in RSX.
All of this then, obviously, needs to be somewhat implemented in any 
other system that talks CTERM. Which absolutely does not map to how 
terminal I/O is done on some other systems.
CTERM was just the absolute wrong abstraction layer to use for a network 
terminal system. Sure, the abstraction and offloading might look 
tempting, but the complexity equally so. And really, in the end, each 
system already know how to deal with a stream of bytes, since that is 
what any physical serial interface controller will give you. That is the 
lowest common denominator. That is pretty much what they should have done.
If DAP is an example, where there is actually a lot of value added by 
the protocol, and where there are things that I can say I sometimes 
really miss when dealing with TCP/IP using FTP, NFS or whatnot, CTERM is 
the perfect example of when DEC really did it wrong, and telnet is a 
dream in comparison.
   Johnny
On 2020-05-05 22:28, Thomas DeBellis wrote:
  Well, yeah, but 'better' can be a very loaded
word...? The NRT protocol 
 certainly appears simpler than CTERM, which struck we Tops-20 developers 
 as very VMS-centric, too.
 
 The Tops-10 and Tops-20 groups operated in a realm where a lot of money 
 was getting spent on costly systems that were nearly always saturated 
 with too many users.? Tops-10 SMP alleviated certain cases of this.  
 That functionality could have been more fully leveraged in Tops-20, 
 which supports a richer process model, but the hardware didn't support 
 multi-ported memory.? Multi-processor TENEX did exist.? I recall a dual 
 KI TENX on the ARPAnet; it may have been SUMEX-AIM.? Tops-20's CI 
 implementation was nice, but it didn't solve all the problems that SMP 
 (or the KC) would have.
 
 Given the above, there was an emphasis on simplicity of design and code 
 efficiency unless hair was absolutely necessary.? This isn't to say that 
 some pretty complex code wasn't written, but this was typically to wring 
 as much as possible out of the processor.
 
 VMS and RSX seemed to have poked their heads up in other areas of 
 DECnet.? Tops-10's (pre-level D) file system is basically block 
 structured.? The blocks are larger in Tops-20, I/O is more efficient, 
 the files can have holes, a character (byte) interface exists and the 
 lexical interface is richer.? We were aware of the richness of the MVS 
 file formats, but had never seen any particular use for the complexity.  
 When we bumped into DAP, the first response was, "Gee, what do you need 
 all this MVS stuff for?"
 
 DAP certainly does more than FTP can by far, but all the file formats 
 were lost on (the few) developers who knew both MVS and Tops-20.
 
 The question for CTERM is what is the additional hair really getting 
 you?? What can it do that NRT doesn't.? From the user mode, you can't 
 tell the difference (modulo certain shortcomings in the Tops-20 
 implementation that I don't know if they are being caused by the 
 protocol).? I have only a passing familiarity with CTERM, some with LAT 
 and little with NRT; so I can't really comment on what the CTERM value 
 add is/was.
 
> ------------------------------------------------------------------------
> On 5/5/20 9:44 AM, Paul Koning wrote:
> FWIW: it makes sense that NRT works better than CTERM for TOPS-20.  The same would be
true for RSTS if it implemented CTERM at all, which it doesn't.  (Two reasons for
that: (1) the vast complexity of CTERM, (2) the fact that RSTS was told not to by
management who didn't particularly care for RSTS's existence.)
>
> While CTERM claims to be a general protocol, it's obvious by inspection that it
is really a generalization of the RSX/VMS style of terminal I/O, which is rather different
from that of RSTS, TOPS-10, or TOPS-20.  So implementing CTERM on those amounts to an
exercise in forcing the native OS terminal semantics through what amounts to a VMS
terminal QIO API.
>
> 	paul
>> ------------------------------------------------------------------------
>> On May 4, 2020, at 6:29 PM, Thomas DeBellis<tommytimesharing at gmail.com> 
wrote:
>>
>> ...
>>
>> Right now, I'm working on SETHOST, which is a client for the earlier NRT
protocol (Network Remote Terminal) that predates CTERM on the 36 bit platform.  It's
more efficient than CTERM (I have yet to compare it with LAT) and will do certain things
that I like that the Tops-20 implementation of CTERM doesn't.
> 
-- 
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