First post, by pishposh
This one has me beat.
I recently thought I'd give Procomm Plus 2.01 a try under DOSBox. It's a terminal emulator from ~1990 for serial modems.
Dug up my old U.S. Robotics 56K Sportster external modem, connected it to COM1 on my PC, and set that port in Windows' Device Manager for 115200/N81/hardware flow control. Then started Procomm Plus under DOSBox, configured it for COM1 (serial1=directserial realport:COM1 was in my DOSBox config file BTW), set its terminal baud rate to 115200/N81/hardware flow control, and ... INSTANT GRATIFICATION! 😀 I could talk to my modem via its AT command set just fine.
First thing I did was check how quickly Procomm Plus was able to communicate with the modem. My particular modem model has an proprietary AT command that causes the modem to spew a full list of all the other AT commands it supports -- a rather long list, about 50 lines or so worth. So, I used that command just to visually gauge about how quickly Procomm Plus was able to receive data from my true hardware modem with DOSBox as middleman. Result? Only word I can use to describe what I saw would be: "BAM!" Or put another way, DOXBox was not slowing Procomm Plus down much if at all -- looked like I was getting a full 115200 bps between Procomm Plus and the modem itself. The entire output of the modem's long help screen finished displaying damned near instantaneously. Just for fun, I then changed Procomm Plus' terminal baud rate to 300 baud, and repeated the same command. Result? Excruciating slowness! Just like in the bad old days of real 300 baud modems. The thing was truly running at 300 baud. 😀 So, right back to 115200 I went.
Next test was finding a BBS that still had a dial-in number. I managed to connect just fine at 52000 bps, and the on-screen text display speed looked exactly correct for what I remembered of those speeds in the BBS'ing days.
Anyway: That's where my fast speeds stopped, however.
The next thing I tried was switching DOSBox to its internal modem emulator (serial1=directserial realport:COM1 -> serial1=modem). Unfortunately, as soon as I did that, everything became slooooow. Absolutely every server I connected to ... whether a telnet BBS (e.g. "ATDT vert.synchro.net:23"), or my usenet server ("ATDT cnews.newsguy.com:119"), seemed be running at a speed reminiscent of 2400 or maybe 4800 baud. (I could literally watch the cursor move across the screen as each line of text came through.) Sure enough, the DOSBox console window was indicating "CONNECT 57600", and Procomm Plus' terminal baud rate was still set at 115200. Yet somehow, it was as if the "terminal baud rate" for DOSBox's emulated modem wasn't any faster than 2400-4800.
Stranger still, when I changed Procomm Plus' terminal baud rate to 300 just to see what happen, it DID NOT slow anything down -- same exact 2400-4800 baud apparent (to the eye) speed.
Bottom line: I suspect DOSBox has some obscure setting, somewhere, that controls the DTR baud rate of its internal modem -- perhaps set at a default in the range of 2400-4800 so older games can cope with the speed of incoming data? Perhaps this default rate is even configurable with one of the emulated modem's AT commands. I dunno. Problem is, no matter how much documentation I read, I cannot find any such setting. 🙁
Background information:
* This is a brand new DOSBox installation (for this computer). Nothing was changed in the configuration file except the serial1= line (as indicated above), and also, under [CPU], I set cputype=pentium_slow.
* Motherboard = Dell OEM (2003 "Precision M60" laptop)
* Processor type and speed = Intel 2.0 GHz single core
* Amount and type of RAM = 2 GB (no other programs running, no disk swap activity at the time I was using DOSBox)
* Video board w/ RAM amount and type = NVIDIA QuatroFX Go1000
* Sound board = (irrelevant?)
* Operating system = XP SP2
* Reproducibility of problem = always
* I am on 3.0/768 DSL, and its pipe was/is wide open and not saturated
Attached is a video I made with CamStudio (MSVIDEO codec, but plays fine in VLC) illustrating the problem. This video demonstrates three things (in this order):
* Me starting Procomm Plus and connecting to a telnet BBS. Notice the 2400/4800 baud like speed. Gah!
* Me disconnecting from the BBS and connecting to my ISP's SMTP server. Here, I type EHLO a few times in a row (because it spits out a medium-sized chunk of text in response). Reason: just to demonstrate that the same slowness occurs with a totally different server. (Note: the SMTP server seems faster, but only because it's not bogged down by ANSI color codes. If you look carefully though, you'll see that the screen output speed is still regrettably slow -- nowhere near what 115200 looks like (the maximum terminal rate Procomm Plus just happens to be capable of and which I lust after! 😉)
* Finally, I set DOSBox aside and start a generic Windows telnet client and connect it to that same SMTP server, and again run the EHLO command a few times in a row. This, I just did for A/B comparison purposes. As can be seen, in my Windows telnet client, the SMTP server's responses to EHLO are instantaneous, unlike when I saw them via DOSBox's emulator modem.
So. Yup. Something about DOSBox's emulated modem is throttling me.
Help? Please? 🤣