I think things might have gotten a little off track and that's largely my fault for using some incorrect terminology up front.
Let me re-state my issue and some recent findings as I believe this
may only be happening on WWIV boards.
Let's suppose a few different scenarios:
- Hardware C128 (64 mode) with Link232 Cartridge. Software: StrikeTerm
- Hardware C128 (128 mode) with Link232 Cartridge. Software: my (work-in-progress) terminal program
- Hardware C128 (128 mode) with Link232 Cartridge. Software: DesTerm
- Hardware Apple //c with WiFi Modem Software: ProTerm 2.2
- Hardware Apple //c with WiFi Modem. Software: AppleTerm
- Hardware PC (DOS). Software: Terminate
- Hardware PC (DOS). Software: mbbrutman's own mTcpSuite Telnet client
- Hardware PC (Linux). Software: SyncTerm
For #1 you can swap out StrikeTerm with NovaTerm, CCGMS, or probably any other term that supports ASCII
For #3 you can swap out DesTerm for Dialog.
For #6 you could swap out Terminate with Telix or probably any other dos-based terminal emu
These are the scenarios I've tested so far.
What I'm finding is that on some boards (specifically, and I didn't find this out until this morning so don't get mad at me for not mentioning it sooner) with WWIV boards. With scenarios #2 and #4 I am getting two CR's (character 13) at the end of each line. Whereas on that same board, using all other scenarios I am getting one CR at the end of each line.
For #4 I don't really care to correct this issue I include it only that it might provide some clues as to why this is happening.
What I want to solve is #2 since this is the program I'm writing.
The question I'm asking myself is why with some boards (what I now believe to be isolated to WWIV boards but I might find other BBS software in the future that also exhibits this behavior) am I getting two CRs at the end of every line whereas with other terminal emulators I am not.
I don't think this has anything to do with the Telnet protocol as I doubt WWIV is doing any kind of telnet negotiation, unless something sitting in the middle between WWIV and TCP is doing it. But even if that was the case it wouldn't explain why terminal emulators that were never designed to do telnet ... anything, such as AppleTerm, NovaTerm, etc. would behave "as expected" (one CR per line).
Whatever is making these term programs display only single CRs it isn't due to telnet negotiation because why would a term program written to communicate serial data over a modem be doing telnet negotiation? You might say "well TCPSER / Link232 / WiFiModem is doing it" but then why would they not be doing it with scenarios 2 and 4?
If the answer is that it is just in WWIV's nature to be sending two CRs after each line, then why am I only seeing that in two of the above scenarios?