VOGONS

Common searches


First post, by mbbrutman

User metadata
Rank Member
Rank
Member

The short story: a new version of mTCP is available at http://www.brutman.com/mTCP/

The longer story ...

While the pace of releases has slowed in the past few years, rest assured that I am still actively fixing bugs and making improvements. This release improves flow control for TCP connections that are experiencing dropped packets, fixes ANSI emulation bugs in Telnet, sees a mostly rewritten (and improved!) HTGet, and adds a new feature to FTP to help people avoid corrupting data by using the wrong file transfer mode. The full list of changes can be found at http://brutman.com/mTCP/mTCP_2020-01-01_Release_Notes.html .

Downloads:

All downloads can be found at http://www.brutman.com/mTCP/.

Two versions of the programs are available for download. The standard version contains the standard EXE files. The UPX version contains EXE files that have been compressed with the UPX utility to save room on disk. When you run these versions they take a little longer to start, but if you are tight on disk space or are using floppy disks this is a good trade-off.

Documentation is available separately as a PDF file. I don’t include the PDF file with the binary versions because small DOS machines often can read PDF files.

Source code and developer documentation is available in a separate zip archive.

Support:

As always, if you have a bug report, are having trouble making things work, or just have a suggestion please email me at mbbrutman@gmail.com. While I might see bug reports or help requests in other places, email is the best, most direct way to get my attention.

Enjoy!
-Mike

Reply 2 of 47, by keropi

User metadata
Rank l33t++
Rank
l33t++

amazing news! thanks mbbrutman!
mTCP ftpserver is perhaps the most used utility in my retro builds, only LIST gets used more!

🎵 PCMIDI mpu site buy+info
🎧 WIP Orpheus soundcard site
💻 WTB Amstrad PC7486SLC-33 system

Reply 5 of 47, by mbbrutman

User metadata
Rank Member
Rank
Member

And just for giggles, the PCjr is serving the same web pages as the main site:

I'll leave it running for a few days.

Reply 7 of 47, by keenmaster486

User metadata
Rank l33t
Rank
l33t

Hi mbbrutman,

After using the 2020 version for some time now, I can report the following:

-On some machines, the new version fixes FTP extreme slowness to do any operation like log in, get directory listing, begin file transfer, etc. Once a file transfer begins, it's fast.
-On other machines, it does NOT fix it. I have noticed this only happens with faster machines; it does not happen on my IBM PC/AT for example. It happens more often when it's a laptop connected over WiFi (like an Orinoco card). And it is (I think) always when trying to connect to mTCP FTP client/server via a more modern client/server like Linux ftpd or FileZilla.

This happens with both the FTP client and the server.

I flermmed the plootash just like you asked.

Reply 9 of 47, by thierry

User metadata
Rank Newbie
Rank
Newbie

Thanks for the update ! , One question, is it possible to ask as a list of where it will be connected by telnet, as a menu? , it is because it is used a lot to connect to BBS and there is no bad idea to have a menu with a list that can be recorded from BBS, thanks

Reply 11 of 47, by thierry

User metadata
Rank Newbie
Rank
Newbie

Thanks for the quick response, first I have to remember that mCTP is the standard defacto to connect our old PCs to the internet (I connect IBM 5150, PC XT clone, 386dx40mhz, ETC), I also have to remember that in a few months the BBS listing jump from 400 to 662, that means the scene is more alive than ever! , my idea was to use the Telnet but with a menu calling it from the ALT-D key combination (just an example), as the telephone guide of the old TERMINATE

Aq3n3H5.png

I guess not so complex, but with that you can add BBS to a list and be able to choose would be an advance, thanks!

Reply 12 of 47, by mbbrutman

User metadata
Rank Member
Rank
Member

So much for quick responses ...

Telnet is one of the larger programs because the ANSI emulation that is built into it and the Telnet protocol are pretty heavy weight. As a result, I'm kind of sensitive to the size of the code and I don't want to add more to it unless necessary. To that end I've been thinking of providing a variant that does not have X and Y modem support, which cuts code size down a bit. Then again, maybe everybody finally has 512KB now. 😀

What you are describing could very easily be a standalone "phone book" program that launches telnet with the correct IP address and options when a target is chosen. It would be a little slower than having one giant binary that does everything, but also more flexible.

Reply 13 of 47, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

Back in days, terminals were able to drop down to another file transfer program to do the download/upload and then restore the terminal program again.
Maybe you can split out the X and Y (and i wish for Z) modem into separate exe file and let the telnet client also drop into another program while doing file transfers?

I know too little about the whole dos environment to assess myself, if that would even be possible, but maybe?

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 14 of 47, by mbbrutman

User metadata
Rank Member
Rank
Member

When doing straight serial communication you could change programs "mid stream" like that because you were only talking to one other computer. The new program could pick up the serial port and continue running with minimal work.

TCP/IP doesn't work that way. When the program starts up it has to connect to the packet driver. And then it has to start processing all incoming packets, including ARP. For Telnet to "hand-off" to another program it would have to disconnect from the packet driver. Any packets that come in during the time it takes the next program to load would be dropped. And you'd also have to find a way to transmit the state of the current TCP/IP connect to the next program so that it could pick up exactly where Telnet left off.

On a faster machine it is possible, but on a slow machine, especially one with a floppy drive it is too long and the TCP connection would probably get dropped.

Reply 15 of 47, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Hi! Just saw some interesting "news" recently.
It's from 2016, but essentially is about the IAB recommending the industry should be going IPV6-only at some point.

https://www.iab.org/documents/correspondence- … tement-on-ipv6/

Edit: 🙂

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 16 of 47, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

I think there's some issue with sntp client.
I have set the timezone and everything, but as of right now, it get's wrong time from the server.
I use "Europe/Tallinn" as timezone (which the sntp client detects) and connect to "0.europe.pool.ntp.org" and while the time should be right now around 14:58, it gets 07:58 time.

Possibly the timezone application code has some weirdness going on there?

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 18 of 47, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie
mbbrutman wrote on 2020-12-29, 17:16:

What is your TZ environment variable set to?

"Europe/Tallinn"

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 19 of 47, by mbbrutman

User metadata
Rank Member
Rank
Member

Try again ... what is the exact string it is set to?

For example, here in the Pacific Northwest of the United States I have it set to TZ=PST8PDT7,M3.2.0/02:00:00,M11.1.0/02:00:00 . The string is complicated but it gives the two timezones (Pacific Standard Time and Pacific Daylight Time) and the month, day, and hour of the cutover times.

Setting TZ correctly is a requirement for SNTP to work.